Iros
 
Loading...
Searching...
No Matches
di::container::string::ConstantStringInterface< Self, Enc > Class Template Reference

#include <di/container/string/constant_string_interface.h>

Inheritance diagram for di::container::string::ConstantStringInterface< Self, Enc >:
[legend]

Public Member Functions

constexpr auto size () const -> usize requires(encoding::Contiguous< Enc >)
 
constexpr auto operator[] (usize index) const -> CodePoint requires(encoding::Contiguous< Enc >)
 
constexpr auto at (usize index) const -> Optional< CodePoint > requires(encoding::Contiguous< Enc >)
 
constexpr auto size_bytes () const -> usize
 
constexpr auto size_code_units () const -> usize
 
constexpr auto empty () const -> bool
 
constexpr auto data () const
 
constexpr auto begin () const
 
constexpr auto end () const
 
constexpr auto front () const
 
constexpr auto back () const
 
constexpr auto starts_with (CodePoint code_point) const -> bool
 
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc>)
constexpr auto starts_with (Con &&container) const -> bool
 
constexpr auto ends_with (CodePoint code_point) const -> bool
 
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc>)
constexpr auto ends_with (Con &&container) const -> bool
 
constexpr auto contains (CodePoint code_point) const -> bool
 
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
constexpr auto contains (Con &&container) const -> bool
 
constexpr auto substr (Iterator first, Optional< Iterator > last={}) const
 
constexpr auto substr (usize offset, Optional< usize > count={}) const
 
constexpr auto find (CodePoint code_point) const
 
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
constexpr auto find (Con &&container) const
 
constexpr auto rfind (CodePoint code_point) const
 
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
constexpr auto rfind (Con &&container) const
 
constexpr auto find_first_of (CodePoint code_point) const
 
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
constexpr auto find_first_of (Con &&container) const
 
constexpr auto find_first_not_of (CodePoint code_point) const
 
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
constexpr auto find_first_not_of (Con &&container) const
 
constexpr auto find_last_of (CodePoint code_point) const
 
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
constexpr auto find_last_of (Con &&container) const
 
constexpr auto find_last_not_of (CodePoint code_point) const
 
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
constexpr auto find_last_not_of (Con &&container) const
 
constexpr auto view () const
 
constexpr auto iterator_at_offset (usize index) const
 
constexpr auto unicode_code_points () const
 

Friends

template<concepts::detail::ConstantString Other>
requires (concepts::SameAs<Enc, meta::Encoding<Other>>)
constexpr friend auto operator== (Self const &a, Other const &b) -> bool
 
template<concepts::detail::ConstantString Other>
requires (concepts::SameAs<Enc, meta::Encoding<Other>>)
constexpr friend auto operator<=> (Self const &a, Other const &b)
 
constexpr friend auto tag_invoke (types::Tag< container::reconstruct >, InPlaceType< Self >, Iterator first, Iterator last) -> StringViewImpl< Enc >
 

Member Function Documentation

◆ at()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::at ( usize index) const -> Optional<CodePoint> requires(encoding::Contiguous<Enc>)
inlineconstexpr

◆ back()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::back ( ) const
inlineconstexpr

◆ begin()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::begin ( ) const
inlineconstexpr

◆ contains() [1/2]

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::contains ( CodePoint code_point) const -> bool
inlineconstexpr

◆ contains() [2/2]

template<typename Self, concepts::Encoding Enc>
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
auto di::container::string::ConstantStringInterface< Self, Enc >::contains ( Con && container) const -> bool
inlineconstexpr

◆ data()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::data ( ) const
inlineconstexpr

◆ empty()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::empty ( ) const -> bool
inlineconstexpr

◆ end()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::end ( ) const
inlineconstexpr

◆ ends_with() [1/2]

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::ends_with ( CodePoint code_point) const -> bool
inlineconstexpr

◆ ends_with() [2/2]

template<typename Self, concepts::Encoding Enc>
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc>)
auto di::container::string::ConstantStringInterface< Self, Enc >::ends_with ( Con && container) const -> bool
inlineconstexpr

◆ find() [1/2]

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::find ( CodePoint code_point) const
inlineconstexpr

◆ find() [2/2]

template<typename Self, concepts::Encoding Enc>
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
auto di::container::string::ConstantStringInterface< Self, Enc >::find ( Con && container) const
inlineconstexpr

◆ find_first_not_of() [1/2]

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::find_first_not_of ( CodePoint code_point) const
inlineconstexpr

◆ find_first_not_of() [2/2]

template<typename Self, concepts::Encoding Enc>
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
auto di::container::string::ConstantStringInterface< Self, Enc >::find_first_not_of ( Con && container) const
inlineconstexpr

◆ find_first_of() [1/2]

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::find_first_of ( CodePoint code_point) const
inlineconstexpr

◆ find_first_of() [2/2]

template<typename Self, concepts::Encoding Enc>
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
auto di::container::string::ConstantStringInterface< Self, Enc >::find_first_of ( Con && container) const
inlineconstexpr

◆ find_last_not_of() [1/2]

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::find_last_not_of ( CodePoint code_point) const
inlineconstexpr

◆ find_last_not_of() [2/2]

template<typename Self, concepts::Encoding Enc>
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
auto di::container::string::ConstantStringInterface< Self, Enc >::find_last_not_of ( Con && container) const
inlineconstexpr

◆ find_last_of() [1/2]

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::find_last_of ( CodePoint code_point) const
inlineconstexpr

◆ find_last_of() [2/2]

template<typename Self, concepts::Encoding Enc>
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
auto di::container::string::ConstantStringInterface< Self, Enc >::find_last_of ( Con && container) const
inlineconstexpr

◆ front()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::front ( ) const
inlineconstexpr

◆ iterator_at_offset()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::iterator_at_offset ( usize index) const
inlineconstexpr

◆ operator[]()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::operator[] ( usize index) const -> CodePoint requires(encoding::Contiguous<Enc>)
inlineconstexpr

◆ rfind() [1/2]

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::rfind ( CodePoint code_point) const
inlineconstexpr

◆ rfind() [2/2]

template<typename Self, concepts::Encoding Enc>
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc> && concepts::ForwardContainer<Con>)
auto di::container::string::ConstantStringInterface< Self, Enc >::rfind ( Con && container) const
inlineconstexpr

◆ size()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::size ( ) const -> usize requires(encoding::Contiguous<Enc>)
inlineconstexpr

◆ size_bytes()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::size_bytes ( ) const -> usize
inlineconstexpr

◆ size_code_units()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::size_code_units ( ) const -> usize
inlineconstexpr

◆ starts_with() [1/2]

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::starts_with ( CodePoint code_point) const -> bool
inlineconstexpr

◆ starts_with() [2/2]

template<typename Self, concepts::Encoding Enc>
template<concepts::ContainerCompatible< CodePoint > Con>
requires (concepts::SameAs<meta::Encoding<Con>, Enc>)
auto di::container::string::ConstantStringInterface< Self, Enc >::starts_with ( Con && container) const -> bool
inlineconstexpr

◆ substr() [1/2]

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::substr ( Iterator first,
Optional< Iterator > last = {} ) const
inlineconstexpr

◆ substr() [2/2]

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::substr ( usize offset,
Optional< usize > count = {} ) const
inlineconstexpr

◆ unicode_code_points()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::unicode_code_points ( ) const
inlineconstexpr

◆ view()

template<typename Self, concepts::Encoding Enc>
auto di::container::string::ConstantStringInterface< Self, Enc >::view ( ) const
inlineconstexpr

Friends And Related Symbol Documentation

◆ operator<=>

template<typename Self, concepts::Encoding Enc>
template<concepts::detail::ConstantString Other>
requires (concepts::SameAs<Enc, meta::Encoding<Other>>)
friend auto operator<=> ( Self const & a,
Other const & b )
friend

◆ operator==

template<typename Self, concepts::Encoding Enc>
template<concepts::detail::ConstantString Other>
requires (concepts::SameAs<Enc, meta::Encoding<Other>>)
friend auto operator== ( Self const & a,
Other const & b ) -> bool
friend

◆ tag_invoke

template<typename Self, concepts::Encoding Enc>
friend auto tag_invoke ( types::Tag< container::reconstruct > ,
InPlaceType< Self > ,
Iterator first,
Iterator last ) -> StringViewImpl<Enc>
friend

The documentation for this class was generated from the following file: