5#ifndef IDENTIFIER_EXPANDEDIDENTIFIER_H
6#define IDENTIFIER_EXPANDEDIDENTIFIER_H
135 void set (
const std::string& text);
159 operator std::string ()
const;
163 void show (std::ostream & out)
const;
165 void show (MsgStream & out)
const;
static constexpr element_type max_value
auto operator<=>(const ExpandedIdentifier &other) const
Comparison operators.
void show(std::ostream &out) const
Display detail to ostream.
ExpandedIdentifier(const ExpandedIdentifier &other, size_type start)
Constructor from a subset of another ExpandedIdentifier.
element_vector::size_type size_type
element_type & operator[](size_type index)
ExpandedIdentifier id_type
ExpandedIdentifier & operator<<(element_type value)
bool isValid() const
Returns whether the expanded Identifier contains any information.
bool operator==(const ExpandedIdentifier &other) const
void set(const std::string &text)
build from a textual description
ExpandedIdentifier()=default
void add(element_type value)
Append a value into a new field.
bool match(const ExpandedIdentifier &other) const
Test if the shorter of two ids is identical to the equivalent sub-id extracted from the longer.
void clear()
Erase all fields.
CxxUtils::inplace_vector< element_type, 12 > element_vector
Wrapper for C++26 std::inplace_vector.
boost::container::small_vector< T, N > inplace_vector