Classes | |
| class | eagine::identifier_encoding< CharSet > |
| Helper class implementing identifier encoding functionality. More... | |
| struct | eagine::default_identifier_char_set |
| Characted encoding table for identifier. More... | |
| class | eagine::identifier_name< M > |
| Helper template for unpacking of identifier into a character string. More... | |
| class | eagine::basic_identifier< M, B, CharSet, UIntT > |
| Basic template for limited length, packed string identifiers. More... | |
| struct | eagine::message_id |
| Class storing two identifier values representing class/method pair. More... | |
| struct | eagine::static_message_id< ClassId, MethodId > |
| Template with two identifier parameters representing class/method pair. More... | |
Macros | |
| #define | EAGINE_ID(NAME) |
| Macro for constructing instances of eagine::identifier. More... | |
| #define | EAGINE_ID_V(NAME) |
| Macro for constructing instances of eagine::identifier_t. More... | |
| #define | EAGINE_TAG_TYPE(NAME) |
Macro for defining selector types corresponding to identifier NAME. More... | |
| #define | EAGINE_TAG(NAME) |
Macro for defining selector values corresponding to identifier NAME. More... | |
| #define | EAGINE_LONG_ID(NAME) |
| Macro for constructing instances of eagine::long_identifier. More... | |
| #define | EAGINE_MSG_TYPE(API, NAME) |
| Macro for declaring instantiations of static_message_id. More... | |
| #define | EAGINE_MSG_ID(API, NAME) |
| Macro for instantiating objects of static_message_id. More... | |
Typedefs | |
| using | eagine::identifier = basic_identifier< 10, 6, default_identifier_char_set, identifier_t > |
| Default identifier type used throughout the project. More... | |
| using | eagine::long_identifier = basic_identifier< 20, 6, default_identifier_char_set, long_identifier_t > |
| Long identifier type used throughout the project. More... | |
| using | eagine::identifier_t = std::uint64_t |
| The underlying integer type for eagine::identifier. More... | |
| using | eagine::long_identifier_t = __uint128_t |
| The underlying integer type for eagine::long_identifier. More... | |
Functions | |
| template<std::size_t M> | |
| static auto | eagine::operator<< (std::ostream &out, const identifier_name< M > &n) -> std::ostream & |
| Operator for writing identifier_name into output streams. More... | |
| auto | eagine::byte_to_identifier (byte b) noexcept -> identifier |
| Creates an identifier representing a byte value as a hex string. More... | |
| auto | eagine::dec_to_identifier (int i) noexcept -> identifier |
| Creates an identifier representing an integer value as a decimal string. More... | |
| template<identifier_t ClassId, identifier_t MethodId> | |
| auto | eagine::operator== (message_id l, static_message_id< ClassId, MethodId > r) noexcept |
| Equality comparison between message_id and static_message_id. | |
| auto | eagine::random_identifier (any_random_engine< std::uint32_t > engine) -> identifier |
| Creates an random identifier using the specified random engine. More... | |
| auto | eagine::random_identifier (any_random_engine< std::uint64_t > engine) -> identifier |
| Creates an random identifier using the specified random engine. More... | |
| auto | eagine::random_identifier () -> identifier |
| Creates an random identifier using a default random engine. More... | |
| #define EAGINE_ID | ( | NAME | ) |
Macro for constructing instances of eagine::identifier.
| #define EAGINE_ID_V | ( | NAME | ) |
Macro for constructing instances of eagine::identifier_t.
| #define EAGINE_LONG_ID | ( | NAME | ) |
Macro for constructing instances of eagine::long_identifier.
| #define EAGINE_MSG_ID | ( | API, | |
| NAME | |||
| ) |
Macro for instantiating objects of static_message_id.
| #define EAGINE_MSG_TYPE | ( | API, | |
| NAME | |||
| ) |
Macro for declaring instantiations of static_message_id.
| #define EAGINE_TAG | ( | NAME | ) |
Macro for defining selector values corresponding to identifier NAME.
| #define EAGINE_TAG_TYPE | ( | NAME | ) |
Macro for defining selector types corresponding to identifier NAME.
| using eagine::identifier = typedef basic_identifier<10, 6, default_identifier_char_set, identifier_t> |
Default identifier type used throughout the project.
Allows to store constant short string identifiers with maximum length of 10.
| using eagine::identifier_t = typedef std::uint64_t |
The underlying integer type for eagine::identifier.
| using eagine::long_identifier = typedef basic_identifier<20, 6, default_identifier_char_set, long_identifier_t> |
Long identifier type used throughout the project.
Allows to store constant short string identifiers with maximum length of 10.
| using eagine::long_identifier_t = typedef __uint128_t |
The underlying integer type for eagine::long_identifier.
|
noexcept |
Creates an identifier representing a byte value as a hex string.
|
noexcept |
Creates an identifier representing an integer value as a decimal string.
|
inlinestatic |
Operator for writing identifier_name into output streams.
| auto eagine::random_identifier | ( | ) | -> identifier |
Creates an random identifier using a default random engine.
| auto eagine::random_identifier | ( | any_random_engine< std::uint32_t > | engine | ) | -> identifier |
Creates an random identifier using the specified random engine.
| auto eagine::random_identifier | ( | any_random_engine< std::uint64_t > | engine | ) | -> identifier |
Creates an random identifier using the specified random engine.