xentara-utils v1.2.1
Xentara utilities library
|
A string with a fixed size. More...
#include <string/FixedString.hpp>
Public Types | |
using | traits_type = CharTraits |
The character traits. | |
using | value_type = Char |
The character type. | |
using | size_type = std::size_t |
The type used for sizes. | |
using | difference_type = std::ptrdiff_t |
The type used for distances. | |
using | reference = value_type & |
A reference to an character. | |
using | const_reference = const value_type & |
A const reference to an character. | |
using | pointer = value_type * |
A pointer to an character. | |
using | const_pointer = const value_type * |
A const pointer to an character. | |
using | iterator = core::ContiguousIterator< pointer, BasicFixedString > |
An iterator. | |
using | const_iterator = core::ContiguousIterator< const_pointer, BasicFixedString > |
A const iterator. | |
using | reverse_iterator = std::reverse_iterator< iterator > |
An iterator for iterating in reverse order. | |
using | const_reverse_iterator = std::reverse_iterator< const_iterator > |
A const iterator for iterating in reverse order. | |
Public Member Functions | |
constexpr | BasicFixedString (Char character=0) noexcept |
Constructor for a string filled with a specific character. | |
constexpr | BasicFixedString (UninitializedTag tag) noexcept |
Constructor for a containing uninitialized characters. | |
Character Access | |
constexpr | operator std::basic_string_view< Char, CharTraits > () const noexcept |
conversion to a string view | |
template<typename Allocator > | |
constexpr | operator std::basic_string< Char, CharTraits, Allocator > () const noexcept |
conversion to an std::string | |
constexpr auto | view () const noexcept -> std::basic_string_view< Char, CharTraits > |
Gets the data as a string view. | |
template<typename Allocator = std::allocator<Char>> | |
constexpr auto | str (const Allocator &allocator=Allocator()) const noexcept -> std::basic_string< Char, CharTraits, Allocator > |
Gets the data as an std::string. | |
constexpr auto | at (size_type index) const -> const_reference |
Accesses the character at a certain index. | |
constexpr auto | at (size_type index) -> reference |
Accesses the character at a certain index. | |
constexpr auto | operator[] (size_type index) const noexcept -> const_reference |
Subscript operator. | |
constexpr auto | operator[] (size_type index) noexcept -> reference |
Subscript operator. | |
constexpr auto | front () const noexcept -> const_reference |
Returns the first character. | |
constexpr auto | front () noexcept -> reference |
Returns the first character. | |
constexpr auto | back () const noexcept -> const_reference |
Returns the last character. | |
constexpr auto | back () noexcept -> reference |
Returns the last character. | |
constexpr auto | data () const noexcept -> const Char * |
Gets a pointer to the data. | |
constexpr auto | data () noexcept -> Char * |
Gets a pointer to the data. | |
constexpr auto | c_str () const noexcept -> const Char * |
Gets the data as a null terminated string. | |
Iterators | |
constexpr auto | begin () noexcept -> iterator |
Creates a begin iterator. | |
constexpr auto | begin () const noexcept -> const_iterator |
Creates a begin iterator. | |
constexpr auto | cbegin () const noexcept -> const_iterator |
Creates a begin iterator. | |
constexpr auto | end () noexcept -> iterator |
Creates an end iterator. | |
constexpr auto | end () const noexcept -> const_iterator |
Creates an end iterator. | |
constexpr auto | cend () const noexcept -> const_iterator |
Creates an end iterator. | |
constexpr auto | rbegin () noexcept -> reverse_iterator |
Creates a reverse begin iterator. | |
constexpr auto | rbegin () const noexcept -> const_reverse_iterator |
Creates a reverse begin iterator. | |
constexpr auto | crbegin () const noexcept -> const_reverse_iterator |
Creates a reverse begin iterator. | |
constexpr auto | rend () noexcept -> reverse_iterator |
Creates a reverse end iterator. | |
constexpr auto | rend () const noexcept -> const_reverse_iterator |
Creates a reverse end iterator. | |
constexpr auto | crend () const noexcept -> const_reverse_iterator |
Creates a reverse end iterator. | |
Related Symbols | |
(Note that these are not member symbols.) | |
template<typename Char , typename CharTraits , std::size_t kSize, std::size_t kCapacity> | |
auto | operator== (const BasicFixedString< Char, kSize, CharTraits > &lhs, const BasicStaticString< Char, kCapacity, CharTraits > &rhs) -> bool |
Comparison operator with a static string. | |
template<typename Char , typename CharTraits , std::size_t kSize, std::size_t kCapacity> | |
auto | operator (const BasicFixedString< Char, kSize, CharTraits > &lhs, const BasicStaticString< Char, kCapacity, CharTraits > &rhs) -> auto |
Comparison operator with a static string. | |
Size and Capacity | |
constexpr auto | empty () const noexcept -> bool |
Determines whether the string is empty. | |
constexpr auto | size () const noexcept -> std::size_t |
Gets the current size. | |
constexpr auto | capacity () const noexcept -> std::size_t |
Gets the capacity of the string. | |
static constexpr auto | max_size () noexcept -> std::size_t |
Gets the maximum size. | |
A string with a fixed size.
Char | The character type |
kSize | The size of the string |
CharTraits | The char traits used for interacting with the standard C++ library |
using xentara::utils::string::BasicFixedString< Char, kSize, CharTraits >::const_iterator = core::ContiguousIterator<const_pointer, BasicFixedString> |
A const iterator.
using xentara::utils::string::BasicFixedString< Char, kSize, CharTraits >::const_pointer = const value_type * |
A const pointer to an character.
using xentara::utils::string::BasicFixedString< Char, kSize, CharTraits >::const_reference = const value_type & |
A const reference to an character.
using xentara::utils::string::BasicFixedString< Char, kSize, CharTraits >::const_reverse_iterator = std::reverse_iterator<const_iterator> |
A const iterator for iterating in reverse order.
using xentara::utils::string::BasicFixedString< Char, kSize, CharTraits >::difference_type = std::ptrdiff_t |
The type used for distances.
using xentara::utils::string::BasicFixedString< Char, kSize, CharTraits >::iterator = core::ContiguousIterator<pointer, BasicFixedString> |
An iterator.
using xentara::utils::string::BasicFixedString< Char, kSize, CharTraits >::pointer = value_type * |
A pointer to an character.
using xentara::utils::string::BasicFixedString< Char, kSize, CharTraits >::reference = value_type & |
A reference to an character.
using xentara::utils::string::BasicFixedString< Char, kSize, CharTraits >::reverse_iterator = std::reverse_iterator<iterator> |
An iterator for iterating in reverse order.
using xentara::utils::string::BasicFixedString< Char, kSize, CharTraits >::size_type = std::size_t |
The type used for sizes.
using xentara::utils::string::BasicFixedString< Char, kSize, CharTraits >::traits_type = CharTraits |
The character traits.
using xentara::utils::string::BasicFixedString< Char, kSize, CharTraits >::value_type = Char |
The character type.
|
constexprnoexcept |
Constructor for a string filled with a specific character.
|
constexprnoexcept |
Constructor for a containing uninitialized characters.
This constructor constructs a string with unitialized string data. You should overwrite the data with valid characters before using the string.
tag | Always pass kUninitialized as this parameter |
|
constexpr |
Accesses the character at a certain index.
index | The index |
std::out_of_range | index is out of range |
|
constexpr |
Accesses the character at a certain index.
index | The index |
std::out_of_range | index is out of range |
|
constexprnoexcept |
Returns the last character.
|
constexprnoexcept |
Returns the last character.
|
constexprnoexcept |
Creates a begin iterator.
|
constexprnoexcept |
Creates a begin iterator.
|
constexprnoexcept |
Gets the data as a null terminated string.
|
constexprnoexcept |
Gets the capacity of the string.
|
constexprnoexcept |
Creates a begin iterator.
|
constexprnoexcept |
Creates an end iterator.
|
constexprnoexcept |
Creates a reverse begin iterator.
|
constexprnoexcept |
Creates a reverse end iterator.
|
constexprnoexcept |
Gets a pointer to the data.
|
constexprnoexcept |
Gets a pointer to the data.
The returned pointer points to a buffer that has enough room for size() characters, plus a terminating null character. It is safe to write to the position after the last character, but only a null character way be written there, or the null termination will be lost.
|
constexprnoexcept |
Determines whether the string is empty.
Since the string has a fixed size, this function will only return true for template instations with a kSize-parameter of 0.
|
constexprnoexcept |
Creates an end iterator.
|
constexprnoexcept |
Creates an end iterator.
|
constexprnoexcept |
Returns the first character.
|
constexprnoexcept |
Returns the first character.
|
staticconstexprnoexcept |
Gets the maximum size.
|
constexprnoexcept |
conversion to an std::string
|
constexprnoexcept |
conversion to a string view
|
constexprnoexcept |
Subscript operator.
Returns a reference to the character at a certain index
index | The index |
|
constexprnoexcept |
Subscript operator.
Returns a reference to the character at a certain index
index | The index |
|
constexprnoexcept |
Creates a reverse begin iterator.
|
constexprnoexcept |
Creates a reverse begin iterator.
|
constexprnoexcept |
Creates a reverse end iterator.
|
constexprnoexcept |
Creates a reverse end iterator.
|
constexprnoexcept |
Gets the current size.
|
constexprnoexcept |
Gets the data as an std::string.
|
constexprnoexcept |
Gets the data as a string view.
|
related |
Comparison operator with a static string.
|
related |
Comparison operator with a static string.