|
Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
|
Returns an uppercase copy of the input string. More...
#include <dynamic_registry.h>
Public Member Functions | |
| SymbolId ()=default | |
| Default constructor, creates an empty identifier. | |
| SymbolId (std::string n) | |
| Constructs a SymbolId from a string. | |
| const std::string & | str () const |
| Returns the underlying string. | |
| SymbolId ()=default | |
| Constructs an empty identifier. | |
| SymbolId (std::string name) | |
| Constructs an identifier from a string. | |
| const std::string & | str () const |
| Returns the underlying string. | |
| operator const std::string & () const | |
| Explicit conversion to const std::string&. | |
| bool | empty () const |
| Returns true if the identifier is empty. | |
Friends | |
| bool | operator== (const SymbolId &a, const SymbolId &b) |
| Case-insensitive equality comparison for SymbolId<Tag>. | |
| bool | operator!= (const SymbolId &a, const SymbolId &b) |
| bool | operator< (const SymbolId &a, const SymbolId &b) |
| Case-insensitive strict ordering for SymbolId<Tag>. | |
Returns an uppercase copy of the input string.
Strongly-typed string identifier.
SymbolId<Tag> wraps a std::string in a lightweight type that is distinguished by its tag parameter. This avoids mixing identifiers that share the same underlying representation but belong to different domains (e.g. observable IDs vs. parameter IDs).
The class itself only stores the original string and exposes it via str(). Equality, ordering and hashing are defined externally and are case-insensitive via normalize_key().
| Tag | Empty tag type used to distinguish different identifier kinds. |
Definition at line 47 of file dynamic_registry.h.
|
default |
Default constructor, creates an empty identifier.
|
inlineexplicit |
Constructs a SymbolId from a string.
The string is stored as-is; normalization (lowercasing, etc.) is performed only in comparison and hashing functions.
| n | Identifier name. |
Definition at line 63 of file dynamic_registry.h.
|
default |
Constructs an empty identifier.
|
inlineexplicit |
Constructs an identifier from a string.
Definition at line 38 of file symbol_id.hpp.
|
inline |
Returns true if the identifier is empty.
Definition at line 47 of file symbol_id.hpp.
|
inlineexplicit |
Explicit conversion to const std::string&.
Definition at line 44 of file symbol_id.hpp.
|
inline |
Returns the underlying string.
This is the original, non-normalized name.
Definition at line 72 of file dynamic_registry.h.
|
inline |
Returns the underlying string.
Definition at line 41 of file symbol_id.hpp.
|
friend |
Definition at line 50 of file symbol_id.hpp.
Case-insensitive strict ordering for SymbolId<Tag>.
The ordering is defined by lexicographic comparison of the normalized names (see normalize_key()). This allows SymbolId<Tag> to be used as keys in ordered containers if needed.
| Tag | Tag type of the SymbolId. |
| a | First identifier. |
| b | Second identifier. |
a is lexicographically smaller than that of b. Definition at line 51 of file symbol_id.hpp.
|
friend |
Case-insensitive equality comparison for SymbolId<Tag>.
Two SymbolId<Tag> values are considered equal if their normalized names (as returned by normalize_key()) are equal, independently of original case.
| Tag | Tag type of the SymbolId. |
| a | First identifier. |
| b | Second identifier. |
Definition at line 49 of file symbol_id.hpp.