xtd 0.2.0
Loading...
Searching...
No Matches
enum_set_attribute.hpp
Go to the documentation of this file.
1
4#pragma once
5#include "enum_attribute.hpp"
6#include "enum_register.hpp"
7#include "number_styles.hpp"
11
13namespace xtd {
35 template<class enum_t>
55 explicit operator auto() const noexcept {return xtd::enum_attribute::standard;}
56 };
57}
58
60template<> struct xtd::enum_register<xtd::enum_attribute> {
61 explicit operator auto() const noexcept {return xtd::enum_collection<xtd::enum_attribute> {{enum_attribute::standard, "standard"}, {enum_attribute::flags, "flags"}};}
62};
63
64template<> struct xtd::enum_set_attribute<xtd::number_styles> {
65 explicit operator auto() const noexcept {return xtd::enum_attribute::flags;}
66};
67
68template<> struct xtd::enum_register<xtd::number_styles> {
69 explicit operator auto() const noexcept {return xtd::enum_collection<xtd::number_styles> {{xtd::number_styles::none, "none"}, {xtd::number_styles::allow_leading_white, "allow_leading_white"}, {xtd::number_styles::allow_trailing_white, "allow_trailing_white"}, {xtd::number_styles::allow_leading_sign, "allow_leading_sign"}, {xtd::number_styles::allow_trailing_sign, "allow_trailing_sign"}, {xtd::number_styles::allow_parentheses, "allow_parentheses"}, {xtd::number_styles::allow_decimal_point, "allow_decimal_point"}, {xtd::number_styles::allow_thousands, "allow_thousands"}, {xtd::number_styles::allow_exponent, "allow_exponent"}, {xtd::number_styles::allow_currency_symbol, "allow_currency_symbol"}, {xtd::number_styles::allow_hex_specifier, "allow_hex_specifier"}, {xtd::number_styles::allow_binary_specifier, "allow_binary_specifier"}, {xtd::number_styles::allow_octal_specifier, "allow_octal_specifier"}, {xtd::number_styles::integer, "integer"}, {xtd::number_styles::number, "number"}, {xtd::number_styles::fixed_point, "fixed_point"}, {xtd::number_styles::currency, "currency"}, {xtd::number_styles::any, "any"}, {xtd::number_styles::hex_number, "hex_number"}, {xtd::number_styles::binary_number, "binary_number"}, {xtd::number_styles::octal_number, "octal_number"}};}
70};
71
72template<> struct xtd::enum_register<xtd::string_comparison> {
73 explicit operator auto() const noexcept {return xtd::enum_collection<xtd::string_comparison> {{xtd::string_comparison::current_culture, "current_culture"}, {xtd::string_comparison::current_culture_ignore_case, "current_culture_ignore_case"}, {xtd::string_comparison::invariant_culture, "invariant_culture"}, {xtd::string_comparison::invariant_culture_ignore_case, "invariant_culture_ignore_case"}, {xtd::string_comparison::ordinal, "ordinal"}, {xtd::string_comparison::ordinal_ignore_case, "ordinal_ignore_case"}};}
74};
75
77 explicit operator auto() const noexcept {return xtd::enum_collection<xtd::string_split_options> {{xtd::string_split_options::none, "none"}, {xtd::string_split_options::remove_empty_entries, "remove_empty_entries"}};}
78};
79
81 explicit operator auto() const noexcept {return xtd::enum_collection<xtd::helpers::exception_case> {{xtd::helpers::exception_case::abandoned_mutex, "abandoned_mutex"}, {xtd::helpers::exception_case::access_violation, "access_violation"}, {xtd::helpers::exception_case::argument, "argument"}, {xtd::helpers::exception_case::argument_null, "argument_null"}, {xtd::helpers::exception_case::argument_out_of_range, "argument_out_of_range"}, {xtd::helpers::exception_case::arithmetic, "arithmetic"}, {xtd::helpers::exception_case::barrier_post_phase, "barrier_post_phase"}, {xtd::helpers::exception_case::culture_not_found, "culture_not_found"}, {xtd::helpers::exception_case::directory_not_found, "directory_not_found"}, {xtd::helpers::exception_case::divided_by_zero, "divided_by_zero"}, {xtd::helpers::exception_case::end_of_stream, "end_of_stream"}, {xtd::helpers::exception_case::file_not_found, "file_not_found"}, {xtd::helpers::exception_case::format, "format"}, {xtd::helpers::exception_case::format_closing_bracket_without_open_bracket, "format_closing_bracket_without_open_bracket"}, {xtd::helpers::exception_case::format_opened_bracket_without_end_bracket, "format_opened_bracket_without_end_bracket"}, {xtd::helpers::exception_case::format_no_start_colon, "format_no_start_colon"}, {xtd::helpers::exception_case::format_not_iformatable, "format_not_iformatable"}, {xtd::helpers::exception_case::index_out_of_range, "index_out_of_range"}, {xtd::helpers::exception_case::invalid_cast, "invalid_cast"}, {xtd::helpers::exception_case::invalid_operation, "invalid_operation"}, {xtd::helpers::exception_case::interrupt, "interrupt"}, {xtd::helpers::exception_case::io, "io"}, {xtd::helpers::exception_case::key_not_found, "key_not_found"}, {xtd::helpers::exception_case::lock_recursion, "lock_recursion"}, {xtd::helpers::exception_case::not_implemented, "not_implemented"}, {xtd::helpers::exception_case::not_supported, "not_supported"}, {xtd::helpers::exception_case::null_pointer, "null_pointer"}, {xtd::helpers::exception_case::object_closed, "object_closed"}, {xtd::helpers::exception_case::operation_canceled, "operation_canceled"}, {xtd::helpers::exception_case::overflow, "overflow"}, {xtd::helpers::exception_case::out_of_memory, "out_of_memory"}, {xtd::helpers::exception_case::path_too_long, "path_too_long"}, {xtd::helpers::exception_case::platform_not_supported, "platform_not_supported"}, {xtd::helpers::exception_case::rank, "rank"}, {xtd::helpers::exception_case::semaphore_full, "semaphore_full"}, {xtd::helpers::exception_case::socket, "socket"}, {xtd::helpers::exception_case::software_termination, "software_termination"}, {xtd::helpers::exception_case::synchronization_lock, "synchronization_lock"}, {xtd::helpers::exception_case::thread_abort, "thread_abort"}, {xtd::helpers::exception_case::thread_interrupted, "thread_interrupted"}, {xtd::helpers::exception_case::thread_state, "thread_state"}, {xtd::helpers::exception_case::time_zone_not_found, "time_zone_not_found"}, {xtd::helpers::exception_case::unauthorized_access, "unauthorized_access"}, {xtd::helpers::exception_case::uri_format, "uri_format"}};}
82};
Contains xtd::enum_attribute enum class.
Contains xtd::enum_register.
Contains xtd::helpers::exception_case enum class.
exception_case
Represents the exception case used by the xtd::helpers::exception helper class.
Definition exception_case.hpp:25
@ format_not_iformatable
The object is not iformatable.
Definition exception_case.hpp:59
@ argument
The argument is not valid.
Definition exception_case.hpp:31
@ end_of_stream
The end of stream is reached.
Definition exception_case.hpp:47
@ overflow
Arithmetic overflow.
Definition exception_case.hpp:85
@ invalid_cast
The cast is not valid.
Definition exception_case.hpp:63
@ format
The format is not valid.
Definition exception_case.hpp:51
@ index_out_of_range
The index is out of range.
Definition exception_case.hpp:61
@ synchronization_lock
The lock is not valid.
Definition exception_case.hpp:101
@ interrupt
An interrupt occurs.
Definition exception_case.hpp:67
@ arithmetic
The arithmetic operation is not valid.
Definition exception_case.hpp:37
@ directory_not_found
The directory is not found.
Definition exception_case.hpp:43
@ barrier_post_phase
The post-phase action of a xtd::threading::barrier fails.
Definition exception_case.hpp:39
@ semaphore_full
The semaphore is full.
Definition exception_case.hpp:95
@ file_not_found
The file is not found.
Definition exception_case.hpp:49
@ path_too_long
The path is too long.
Definition exception_case.hpp:89
@ out_of_memory
Out of memory.
Definition exception_case.hpp:87
@ socket
The socket is not valid.
Definition exception_case.hpp:97
@ format_opened_bracket_without_end_bracket
The format contains open backet_without_end_bracket.
Definition exception_case.hpp:55
@ not_implemented
The method or operation is not implemented.
Definition exception_case.hpp:75
@ rank
The rank is not valid.
Definition exception_case.hpp:93
@ culture_not_found
The culture is not found.
Definition exception_case.hpp:41
@ access_violation
An access violation occurs.
Definition exception_case.hpp:29
@ uri_format
The uri format is not valid.
Definition exception_case.hpp:113
@ abandoned_mutex
The mutex is abandoned.
Definition exception_case.hpp:27
@ time_zone_not_found
The time zone is not found.
Definition exception_case.hpp:109
@ lock_recursion
The lock recursion is not valid.
Definition exception_case.hpp:73
@ thread_interrupted
The thread is interrupted.
Definition exception_case.hpp:105
@ not_supported
The method or operation is not supported.
Definition exception_case.hpp:77
@ platform_not_supported
The platform is not supported.
Definition exception_case.hpp:91
@ unauthorized_access
The access is denied.
Definition exception_case.hpp:111
@ argument_null
The argument is null.
Definition exception_case.hpp:33
@ thread_abort
The thread is abort.
Definition exception_case.hpp:103
@ object_closed
The object is closed.
Definition exception_case.hpp:81
@ thread_state
The thread state is not valid.
Definition exception_case.hpp:107
@ argument_out_of_range
The argument is out of range.
Definition exception_case.hpp:35
@ null_pointer
The pointer is null.
Definition exception_case.hpp:79
@ format_closing_bracket_without_open_bracket
The format contains close backet_without_open_bracket.
Definition exception_case.hpp:53
@ divided_by_zero
The divisor is equal to 0.
Definition exception_case.hpp:45
@ software_termination
A software termination occurs.
Definition exception_case.hpp:99
@ invalid_operation
The operation is not valid.
Definition exception_case.hpp:65
@ key_not_found
The key is not found.
Definition exception_case.hpp:71
@ io
I/O erreror occurs.
Definition exception_case.hpp:69
@ operation_canceled
The operation is canceled.
Definition exception_case.hpp:83
@ format_no_start_colon
The format does not contains start colon.
Definition exception_case.hpp:57
string_comparison
Specifies the culture, case, and sort rules to be used by certain overloads of the xtd::string::compa...
Definition string_comparison.hpp:14
number_styles
Determines the styles permitted in numeric string arguments that are passed to the xtd::parse and xtd...
Definition number_styles.hpp:16
string_split_options
Specifies whether applicable xtd::string::split method overloads include or omit empty substrings fro...
Definition string_split_options.hpp:14
enum_attribute
Specifies the enum attribute.
Definition enum_attribute.hpp:22
std::vector< std::pair< enum_t, xtd::string > > enum_collection
Represents a pair of an enum_t value and a string of an enum of type enum_t.
Definition enum_collection.hpp:24
@ ordinal
Compare strings using ordinal (binary) sort rules.
Definition string_comparison.hpp:24
@ invariant_culture
Compare strings using culture-sensitive sort rules and the invariant culture.
Definition string_comparison.hpp:20
@ invariant_culture_ignore_case
Compare strings using culture-sensitive sort rules, the invariant culture, and ignoring the case of t...
Definition string_comparison.hpp:22
@ ordinal_ignore_case
Compare strings using ordinal (binary) sort rules and ignoring the case of the strings being compared...
Definition string_comparison.hpp:26
@ current_culture_ignore_case
Compare strings using culture-sensitive sort rules, the current culture, and ignoring the case of the...
Definition string_comparison.hpp:18
@ current_culture
Compare strings using culture-sensitive sort rules and the current culture.
Definition string_comparison.hpp:16
@ allow_thousands
Indicates that the numeric string can have group separators, such as symbols that separate hundreds f...
Definition number_styles.hpp:32
@ allow_decimal_point
Indicates that the numeric string can have a decimal point. If the number_styles value includes the a...
Definition number_styles.hpp:30
@ any
Indicates that all styles except allow_binary_specifier, allow_octal_specifier and allow_hex_specifie...
Definition number_styles.hpp:52
@ integer
Indicates that the allow_leading_white, allow_trailing_white, and allow_leading_sign styles are used....
Definition number_styles.hpp:44
@ currency
Indicates that all styles except allow_exponent, allow_hex_specifier, allow_binary_specifier and allo...
Definition number_styles.hpp:50
@ allow_trailing_sign
Indicates that the numeric string can have a trailing sign. Valid trailing sign characters are determ...
Definition number_styles.hpp:26
@ allow_leading_sign
Indicates that the numeric string can have a leading sign.
Definition number_styles.hpp:24
@ none
Indicates that no style elements, such as leading or trailing white space, thousands separators,...
Definition number_styles.hpp:18
@ allow_parentheses
Indicates that the numeric string can have one pair of parentheses enclosing the number....
Definition number_styles.hpp:28
@ binary_number
Indicates that the allow_leading_white, allow_trailing_white, and allow_binary_specifier styles are u...
Definition number_styles.hpp:56
@ allow_exponent
Indicates that the numeric string can be in exponential notation. The allow_exponent flag allows the ...
Definition number_styles.hpp:34
@ allow_hex_specifier
Indicates that the numeric string represents a hexadecimal value. Valid hexadecimal values include th...
Definition number_styles.hpp:38
@ fixed_point
Indicates that the allow_leading_white, allow_trailing_white, allow_leading_sign, allow_decimal_point...
Definition number_styles.hpp:48
@ allow_octal_specifier
Indicates that the numeric string represents a octal value. Valid octal values include the numeric di...
Definition number_styles.hpp:42
@ allow_leading_white
Indicates that leading white-space characters can be present in the parsed string....
Definition number_styles.hpp:20
@ octal_number
Indicates that the allow_leading_white, allow_trailing_white, and allow_octal_specifier styles are us...
Definition number_styles.hpp:58
@ number
Indicates that the allow_leading_white, allow_trailing_white, allow_leading_sign, allow_trailing_sign...
Definition number_styles.hpp:46
@ allow_trailing_white
Indicates that trailing white-space characters can be present in the parsed string....
Definition number_styles.hpp:22
@ allow_currency_symbol
Indicates that the numeric string can contain a currency symbol. Valid currency symbols are determine...
Definition number_styles.hpp:36
@ hex_number
Indicates that the allow_leading_white, allow_trailing_white, and allow_hex_specifier styles are used...
Definition number_styles.hpp:54
@ allow_binary_specifier
Indicates that the numeric string represents a binary value. Valid binary values include the numeric ...
Definition number_styles.hpp:40
@ none
The return value includes array elements that contain an empty string.
Definition string_split_options.hpp:16
@ remove_empty_entries
The return value does not include array elements that contain an empty string.
Definition string_split_options.hpp:18
@ flags
Enum flags attribute.
Definition enum_attribute.hpp:26
@ standard
Enum standard attribute. The default value.
Definition enum_attribute.hpp:24
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition abstract_object.hpp:8
Contains xtd::number_styles enum class.
Contains xtd::string_comparison enum class.
Contains xtd::string_split_options enum class.
Provides the registration struct for enumerations.
Definition enum_register.hpp:38
Provides the set attribute struct for enumerations.
Definition enum_set_attribute.hpp:36