YSTest: string_view.hpp 文件参考

YSTest PreAlpha_b900_20201012 The YSLib Test Project

类 | 命名空间 | 宏定义 | 类型定义 | 函数
string_view.hpp 文件参考
YBaseLib » YStandardExtend

只读字符串视图。 更多...

`#include "range.hpp"`
`#include "cstring.h"`
`#include "operators.hpp"`
`#include <limits>`
`#include <stdexcept>`
`#include "hash.hpp"`
string_view.hpp 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

## 类

class | ystdex::cpp2017::basic_string_view< _tChar, _tTraits >
struct | std::hash< ystdex::basic_string_view< _tChar, _tTraits > >
| ystdex::basic_string_view 散列支持。 更多...

## 命名空间

| ystdex
| `<memory>` 特性测试宏。
| ystdex::cpp2017
| 取约束范围的值。
| std

## 宏定义

#define | YB_Impl_StringView_search_fn_head(_n, _attr, _spec, ...)
#define | YB_Impl_StringView_search1(_n, _arg)
#define | YB_Impl_StringView_search34(_n, _arg)
#define | YB_Impl_StringView_search_mf(_n, _arg)
#define | YB_Impl_StringView_search_mf2(_n, _arg, _n2)

## 类型定义

using | ystdex::cpp2017::string_view = basic_string_view< char >
using | ystdex::cpp2017::u16string_view = basic_string_view< char16_t >
using | ystdex::cpp2017::u32string_view = basic_string_view< char32_t >
using | ystdex::cpp2017::wstring_view = basic_string_view< wchar_t >
template<class _tString >
using | ystdex::string_view_t = basic_string_view< typename _tString::value_type >
| 取字符串类类型的值类型对应的字符串视图类型。 更多...

## 函数

template<typename _tChar , class _tTraits >
bool | ystdex::cpp2017::operator== (basic_string_view< _tChar, _tTraits > x, decay_t< basic_string_view< _tChar, _tTraits >> y)
template<typename _tChar , class _tTraits >
bool | ystdex::cpp2017::operator== (decay_t< basic_string_view< _tChar, _tTraits >> x, basic_string_view< _tChar, _tTraits > y)
template<typename _tChar , class _tTraits >
bool | ystdex::cpp2017::operator< (basic_string_view< _tChar, _tTraits > x, basic_string_view< _tChar, _tTraits > y)
template<typename _tChar , class _tTraits >
bool | ystdex::cpp2017::operator< (basic_string_view< _tChar, _tTraits > x, decay_t< basic_string_view< _tChar, _tTraits >> y)
template<typename _tChar , class _tTraits >
bool | ystdex::cpp2017::operator< (decay_t< basic_string_view< _tChar, _tTraits >> x, basic_string_view< _tChar, _tTraits > y)
template<typename _tChar , class _tTraits >
std::basic_ostream< _tChar, _tTraits > & | ystdex::cpp2017::operator<< (std::basic_ostream< _tChar, _tTraits > &os, basic_string_view< _tChar, _tTraits > str)

## 详细描述

只读字符串视图。

版本
  r636

作者
  FrankHB frank.nosp@m.hb19.nosp@m.89@gm.nosp@m.ail..nosp@m.com

自从
  build 640

创建时间:
  2015-09-28 12:04:58 +0800

修改时间:
  2020-07-17 01:16 +0800

文本编码:
  UTF-8

模块名称:
  YStandardEx::StringView

参见
  ISO C++17 [string.view] 。
  WG21 N4480 7[string_view] 。

提供 ISO C++17 标准库头 <string_view> 兼容的替代接口和实现。 除了部分关系操作使用 operators 实现而不保留命名空间内的声明及散列支持提供偏特化外， 其它接口同 std::string_view 。 注意因为一些兼容问题， std::experimental::string_view 不被可选地使用， 以便支持和 std::string 的交互性。

在文件 string_view.hpp 中定义.

## 宏定义说明

## ◆ YB_Impl_StringView_search1

#define YB_Impl_StringView_search1 | ( |  | _n,
|  |  | _arg
| ) |  |

值:
YB_Impl_StringView_search_fn_head(_n, , ynothrow, basic_string_view s, \
size_type pos = _arg) \
return ystdex::str_##_n<value_type, size_type, traits_type, \
npos>(data_, size_, s.data_, pos, s.size_); \
}

在文件 string_view.hpp 第 327 行定义.

## ◆ YB_Impl_StringView_search34

#define YB_Impl_StringView_search34 | ( |  | _n,
|  |  | _arg
| ) |  |

值:
YB_Impl_StringView_search_fn_head(_n, YB_NONNULL(2), , const _tChar* s, \
size_type pos, size_type n) \
return yconstraint(s), _n(basic_string_view(s, n), pos); \
} \
YB_Impl_StringView_search_fn_head(_n, YB_NONNULL(2), , const _tChar* s, \
size_type pos = _arg) \
return _n(s, pos, traits_type::length(s)); \
}

在文件 string_view.hpp 第 333 行定义.

## ◆ YB_Impl_StringView_search_fn_head

#define YB_Impl_StringView_search_fn_head | ( |  | _n,
|  |  | _attr,
|  |  | _spec,
|  |  | ...
| ) |  |

值:
YB_ATTR_nodiscard YB_PURE yconstfn_relaxed _attr size_type \
_n(__VA_ARGS__) const _spec \
{

在文件 string_view.hpp 第 323 行定义.

## ◆ YB_Impl_StringView_search_mf

#define YB_Impl_StringView_search_mf | ( |  | _n,
|  |  | _arg
| ) |  |

值:
YB_Impl_StringView_search1(_n, _arg) \
YB_Impl_StringView_search_fn_head(_n, , ynothrow, _tChar c, \
size_type pos = _arg) \
return ystdex::str_##_n<value_type, size_type, traits_type, \
npos>(data_, size_, c, pos); \
} \
YB_Impl_StringView_search34(_n, _arg)

在文件 string_view.hpp 第 342 行定义.

## ◆ YB_Impl_StringView_search_mf2

#define YB_Impl_StringView_search_mf2 | ( |  | _n,
|  |  | _arg,
|  |  | _n2
| ) |  |

值:
YB_Impl_StringView_search1(_n, _arg) \
YB_Impl_StringView_search_fn_head(_n, , ynothrow, _tChar c, \
size_type pos = _arg) \
return _n2(c, pos); \
} \
YB_Impl_StringView_search34(_n, _arg)

在文件 string_view.hpp 第 350 行定义.

YB_ATTR_nodiscard
#define YB_ATTR_nodiscard
标记返回值不被忽略的属性。
Definition: ydef.h:715
CHRLib::c
c
Definition: CharacterProcessing.h:84
YB_PURE
#define YB_PURE
指示函数或函数模板实例为纯函数。
Definition: ydef.h:919
yconstfn_relaxed
#define yconstfn_relaxed
指定编译时没有 C++11 限制和隐式成员 const 的常量函数。
Definition: ydef.h:1097
YB_Impl_StringView_search_fn_head
#define YB_Impl_StringView_search_fn_head(_n, _attr, _spec,...)
Definition: string_view.hpp:322
yconstraint
#define yconstraint(_expr)
约束：接口语义。
Definition: cassert.h:125
CHRLib::s
_tDst const _tSrc * s
Definition: CharacterProcessing.h:143
YSLib::IO::Path::YB_NONNULL
PDefH(String, GetExtensionOf, const Path &pth) ImplRet(pth.empty() ? String() YF_API YB_NONNULL(1) bool VerifyDirectory(const char *)
判断路径表示绝对路径。
Definition: YSLib/Service/FileSystem.h:516
YB_Impl_StringView_search1
#define YB_Impl_StringView_search1(_n, _arg)
Definition: string_view.hpp:326
ynothrow
#define ynothrow
YSLib 无异常抛出保证：若支持 noexcept 关键字， 指定特定的 noexcept 异常规范。
Definition: ydef.h:1199