ELC in dev
ELC-lang
载入中...
搜索中...
未找到
elc::defs::base::string_view_n::string_view_t< char_T > 模板结构体 参考

array_like_view_t的特化类型,表明这是字符串 更多...

类 elc::defs::base::string_view_n::string_view_t< char_T > 继承关系图:
[图例]
elc::defs::base::string_view_n::string_view_t< char_T > 的协作图:
[图例]

Public 类型

typedef array_like_view_t< const char_Tbase_t
 
typedef char_Tstring_ptr_t
 
typedef const char_Tconst_string_ptr_t
 

Public 成员函数

constexpr string_view_t (const_string_ptr_t str) noexcept
 
constexpr const char_Tstr () const noexcept
 
constexpr const char_Tdata () const noexcept
 
constexpr operator const char_T * () const noexcept
 
constexpr string_view_t substr (size_t pos, size_t len) const noexcept
 
constexpr string_view_t substr (size_t pos) const noexcept
 
constexpr string_view_t substr (size_t pos, const char_T *end) const noexcept
 
constexpr string_view_t substr (const char_T *begin, size_t len) const noexcept
 
constexpr string_view_t substr (const char_T *begin) const noexcept
 
constexpr string_view_t substr (const char_T *begin, const char_T *end) const noexcept
 
constexpr bool starts_with (const char_T ch) const noexcept
 
constexpr bool starts_with (string_view_t str) const noexcept
 
constexpr bool starts_with (const char_T *str) const noexcept
 
constexpr size_t find (const char_T ch) const
 
constexpr size_t reverse_find (const char_T ch) const
 
constexpr size_t find (string_view_t str) const
 
constexpr size_t reverse_find (string_view_t str) const
 
constexpr size_t find (const constexpr_str_t< char_T > &str) const
 
constexpr size_t reverse_find (const constexpr_str_t< char_T > &str) const
 
constexpr size_t find_first_of (const char_T ch) const
 
constexpr size_t find_last_of (const char_T ch) const
 
constexpr size_t find_first_not_of (const char_T ch) const
 
constexpr size_t find_last_not_of (const char_T ch) const
 
constexpr size_t find_first_of (string_view_t str) const
 
constexpr size_t find_last_of (string_view_t str) const
 
constexpr size_t find_first_not_of (string_view_t str) const
 
constexpr size_t find_last_not_of (string_view_t str) const
 
constexpr size_t find_first_of (const constexpr_str_t< char_T > &str) const
 
constexpr size_t find_last_of (const constexpr_str_t< char_T > &str) const
 
constexpr size_t find_first_not_of (const constexpr_str_t< char_T > &str) const
 
constexpr size_t find_last_not_of (const constexpr_str_t< char_T > &str) const
 

静态 Public 属性

static constexpr size_t npos =bit::npos
 

详细描述

template<typename char_T>
struct elc::defs::base::string_view_n::string_view_t< char_T >

array_like_view_t的特化类型,表明这是字符串

在文件 all_defs.cpp11919 行定义.

成员类型定义说明

◆ base_t

◆ const_string_ptr_t

在文件 all_defs.cpp11923 行定义.

◆ string_ptr_t

构造及析构函数说明

◆ string_view_t()

template<typename char_T >
constexpr elc::defs::base::string_view_n::string_view_t< char_T >::string_view_t ( const_string_ptr_t  str)
inlineconstexprnoexcept

在文件 all_defs.cpp11926 行定义.

constexpr T down_cast(U a) noexcept
向下转型至
constexpr const char_T * str() const noexcept
constexpr string_view_t(const_string_ptr_t str) noexcept

成员函数说明

◆ data()

template<typename char_T >
constexpr const char_T * elc::defs::base::string_view_n::string_view_t< char_T >::data ( ) const
inlineconstexprnoexcept

在文件 all_defs.cpp11929 行定义.

11929{return base_t::cbegin();}
constexpr const_iterator cbegin() const noexcept
这是这个函数的调用关系图:

◆ find() [1/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find ( const char_T  ch) const
inlineconstexpr

在文件 all_defs.cpp11970 行定义.

11970 {
11971 return in_range_size_t(ch, *this);
11972 }
constexpr size_t in_range_size_t(const remove_cvref< T > &pattern, array_like_view_t< T > range)
若成功找到匹配的数据项,返回其距离开头的步数,若未找到,返回npos

◆ find() [2/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find ( const constexpr_str_t< char_T > &  str) const
inlineconstexpr

在文件 all_defs.cpp11982 行定义.

11982 {
11983 return in_range_size_t(str, *this);
11984 }

◆ find() [3/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find ( string_view_t< char_T str) const
inlineconstexpr

在文件 all_defs.cpp11976 行定义.

11976 {
11977 return in_range_size_t(str, *this);
11978 }

◆ find_first_not_of() [1/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find_first_not_of ( const char_T  ch) const
inlineconstexpr

在文件 all_defs.cpp11995 行定义.

11995 {
11996 return range_n::find_first_not_of_size_t(array_like_view_t<const char_T>(&ch, 1), *this);
11997 }
constexpr size_t find_first_not_of_size_t(const array_like_view_t< T > &pattern, array_like_view_t< T > range)
若成功找到不匹配的数据项,返回其距离开头的步数,若未找到,返回npos

◆ find_first_not_of() [2/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find_first_not_of ( const constexpr_str_t< char_T > &  str) const
inlineconstexpr

在文件 all_defs.cpp12019 行定义.

12019 {
12021 }

◆ find_first_not_of() [3/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find_first_not_of ( string_view_t< char_T str) const
inlineconstexpr

在文件 all_defs.cpp12007 行定义.

12007 {
12009 }

◆ find_first_of() [1/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find_first_of ( const char_T  ch) const
inlineconstexpr

在文件 all_defs.cpp11989 行定义.

11989 {
11990 return range_n::find_first_of_size_t(array_like_view_t<const char_T>(&ch, 1), *this);
11991 }
constexpr size_t find_first_of_size_t(const array_like_view_t< T > &pattern, array_like_view_t< T > range)
若成功找到匹配的数据项,返回其距离开头的步数,若未找到,返回npos

◆ find_first_of() [2/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find_first_of ( const constexpr_str_t< char_T > &  str) const
inlineconstexpr

在文件 all_defs.cpp12013 行定义.

12013 {
12014 return range_n::find_first_of_size_t(str, *this);
12015 }

◆ find_first_of() [3/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find_first_of ( string_view_t< char_T str) const
inlineconstexpr

在文件 all_defs.cpp12001 行定义.

12001 {
12002 return range_n::find_first_of_size_t(str, *this);
12003 }

◆ find_last_not_of() [1/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find_last_not_of ( const char_T  ch) const
inlineconstexpr

在文件 all_defs.cpp11998 行定义.

11998 {
11999 return range_n::find_last_not_of_size_t(array_like_view_t<const char_T>(&ch, 1), *this);
12000 }
constexpr size_t find_last_not_of_size_t(const array_like_view_t< T > &pattern, array_like_view_t< T > range)
若成功找到不匹配的数据项,返回其距离开头的步数,若未找到,返回npos

◆ find_last_not_of() [2/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find_last_not_of ( const constexpr_str_t< char_T > &  str) const
inlineconstexpr

在文件 all_defs.cpp12022 行定义.

12022 {
12024 }

◆ find_last_not_of() [3/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find_last_not_of ( string_view_t< char_T str) const
inlineconstexpr

在文件 all_defs.cpp12010 行定义.

12010 {
12012 }

◆ find_last_of() [1/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find_last_of ( const char_T  ch) const
inlineconstexpr

在文件 all_defs.cpp11992 行定义.

11992 {
11993 return range_n::find_last_of_size_t(array_like_view_t<const char_T>(&ch, 1), *this);
11994 }
constexpr size_t find_last_of_size_t(const array_like_view_t< T > &pattern, array_like_view_t< T > range)
若成功找到匹配的数据项,返回其距离开头的步数,若未找到,返回npos

◆ find_last_of() [2/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find_last_of ( const constexpr_str_t< char_T > &  str) const
inlineconstexpr

在文件 all_defs.cpp12016 行定义.

12016 {
12017 return range_n::find_last_of_size_t(str, *this);
12018 }

◆ find_last_of() [3/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::find_last_of ( string_view_t< char_T str) const
inlineconstexpr

在文件 all_defs.cpp12004 行定义.

12004 {
12005 return range_n::find_last_of_size_t(str, *this);
12006 }

◆ operator const char_T *()

template<typename char_T >
constexpr elc::defs::base::string_view_n::string_view_t< char_T >::operator const char_T * ( ) const
inlineconstexprnoexcept

在文件 all_defs.cpp11930 行定义.

11930{return str();}

◆ reverse_find() [1/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::reverse_find ( const char_T  ch) const
inlineconstexpr

在文件 all_defs.cpp11973 行定义.

11973 {
11974 return in_range_but_reverse_size_t(ch, *this);
11975 }
constexpr size_t in_range_but_reverse_size_t(const remove_cvref< T > &pattern, array_like_view_t< T > range)
若成功找到匹配的数据项,返回其距离开头的步数,若未找到,返回npos

◆ reverse_find() [2/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::reverse_find ( const constexpr_str_t< char_T > &  str) const
inlineconstexpr

在文件 all_defs.cpp11985 行定义.

11985 {
11986 return in_range_but_reverse_size_t(str, *this);
11987 }

◆ reverse_find() [3/3]

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::reverse_find ( string_view_t< char_T str) const
inlineconstexpr

在文件 all_defs.cpp11979 行定义.

11979 {
11980 return in_range_but_reverse_size_t(str, *this);
11981 }

◆ starts_with() [1/3]

template<typename char_T >
constexpr bool elc::defs::base::string_view_n::string_view_t< char_T >::starts_with ( const char_T str) const
inlineconstexprnoexcept

在文件 all_defs.cpp11959 行定义.

11959 {
11960 size_t i = 0;
11961 const auto len = base_t::size();
11962 while(i<len&&str[i])
11963 if(base_t::cbegin()[i]!=str[i])
11964 return false;
11965 else
11966 ++i;
11967 return str[i]==0;
11968 }
constexpr size_t size() const noexcept

◆ starts_with() [2/3]

template<typename char_T >
constexpr bool elc::defs::base::string_view_n::string_view_t< char_T >::starts_with ( const char_T  ch) const
inlineconstexprnoexcept

在文件 all_defs.cpp11951 行定义.

11951 {
11952 return base_t::size()&&base_t::cbegin()[0]==ch;
11953 }

◆ starts_with() [3/3]

template<typename char_T >
constexpr bool elc::defs::base::string_view_n::string_view_t< char_T >::starts_with ( string_view_t< char_T str) const
inlineconstexprnoexcept

在文件 all_defs.cpp11954 行定义.

11954 {
11955 if(str.size()>base_t::size())
11956 return false;
11957 return equal(base_t::cbegin(),str.cbegin(),str.size());
11958 }
constexpr struct elc::defs::base::equal_t equal

◆ str()

template<typename char_T >
constexpr const char_T * elc::defs::base::string_view_n::string_view_t< char_T >::str ( ) const
inlineconstexprnoexcept

在文件 all_defs.cpp11928 行定义.

11928{return base_t::cbegin();}

◆ substr() [1/6]

template<typename char_T >
constexpr string_view_t elc::defs::base::string_view_n::string_view_t< char_T >::substr ( const char_T begin) const
inlineconstexprnoexcept

在文件 all_defs.cpp11944 行定义.

11944 {
11946 }
constexpr const_iterator cend() const noexcept

◆ substr() [2/6]

template<typename char_T >
constexpr string_view_t elc::defs::base::string_view_n::string_view_t< char_T >::substr ( const char_T begin,
const char_T end 
) const
inlineconstexprnoexcept

在文件 all_defs.cpp11947 行定义.

11947 {
11948 return string_view_t(begin,end-begin);
11949 }

◆ substr() [3/6]

template<typename char_T >
constexpr string_view_t elc::defs::base::string_view_n::string_view_t< char_T >::substr ( const char_T begin,
size_t  len 
) const
inlineconstexprnoexcept

在文件 all_defs.cpp11941 行定义.

11941 {
11942 return string_view_t(begin,len);
11943 }

◆ substr() [4/6]

template<typename char_T >
constexpr string_view_t elc::defs::base::string_view_n::string_view_t< char_T >::substr ( size_t  pos) const
inlineconstexprnoexcept

在文件 all_defs.cpp11935 行定义.

11935 {
11937 }

◆ substr() [5/6]

template<typename char_T >
constexpr string_view_t elc::defs::base::string_view_n::string_view_t< char_T >::substr ( size_t  pos,
const char_T end 
) const
inlineconstexprnoexcept

在文件 all_defs.cpp11938 行定义.

11938 {
11940 }

◆ substr() [6/6]

template<typename char_T >
constexpr string_view_t elc::defs::base::string_view_n::string_view_t< char_T >::substr ( size_t  pos,
size_t  len 
) const
inlineconstexprnoexcept

在文件 all_defs.cpp11932 行定义.

11932 {
11934 }

类成员变量说明

◆ npos

template<typename char_T >
constexpr size_t elc::defs::base::string_view_n::string_view_t< char_T >::npos =bit::npos
staticconstexpr

在文件 all_defs.cpp11920 行定义.


该结构体的文档由以下文件生成: