ELC in dev
ELC-lang
载入中...
搜索中...
未找到
elc::defs::string_n::string_data_n::sum_string_data_t< char_T > 模板结构体 参考
类 elc::defs::string_n::string_data_n::sum_string_data_t< char_T > 继承关系图:
[图例]
elc::defs::string_n::string_data_n::sum_string_data_t< char_T > 的协作图:
[图例]

Public 类型

typedef sum_string_data_t< char_Tthis_t
 
typedef base_string_data_t< char_Tbase_t
 
typedef comn_ptr_t< this_tptr_t
 
typedef string_view_t< char_Tstring_view_t
 
typedef char_Tstring_ptr_t
 
typedef const char_Tconst_string_ptr_t
 
- Public 类型 继承自 elc::defs::string_n::string_data_n::base_string_data_t< char_T >
typedef base_string_data_t< char_Tthis_t
 
typedef comn_ptr_t< this_tptr_t
 
typedef string_view_t< char_Tstring_view_t
 
typedef char_Tstring_ptr_t
 
typedef const char_Tconst_string_ptr_t
 
typedef compare_t::type< char_Tcompare_type
 

Public 成员函数

 sum_string_data_t (ptr_t before, ptr_t after) noexcept
 
virtual ptr_t get_substr_data (size_t begin, size_t size) noexcept override final
 
virtual void be_replace_as (ptr_t a) noexcept(clear_nothrow) override final
 
virtual size_t get_size () noexcept override final
 
virtual char_T arec (size_t index) noexcept(copy_construct_nothrow &&move_construct_nothrow) override final
 
virtual void arec_set (size_t index, char_T a, ptr_t &p) noexcept(copy_assign_nothrow &&move_construct_nothrow) override final
 
virtual ptr_t apply_str_to_begin (string_view_t str) noexcept(copy_construct_nothrow &&apply_data_nothrow) override final
 
virtual ptr_t apply_str_to_begin (ptr_t str) noexcept(apply_data_nothrow) override final
 
virtual ptr_t apply_str_to_end (string_view_t str) noexcept(copy_construct_nothrow &&apply_data_nothrow) override final
 
virtual ptr_t apply_str_to_end (ptr_t str) noexcept(apply_data_nothrow) override final
 
virtual ptr_t do_remove_front (size_t size) noexcept(construct_nothrow &&copy_assign_nothrow) override final
 
virtual ptr_t do_remove_back (size_t size) noexcept(construct_nothrow &&copy_assign_nothrow) override final
 
virtual ptr_t do_pop_front (size_t size, ptr_t &self) noexcept(construct_nothrow &&copy_assign_nothrow) override final
 
virtual ptr_t do_pop_back (size_t size, ptr_t &self) noexcept(construct_nothrow &&copy_assign_nothrow) override final
 
void self_changed () noexcept
 
hash_t set_hash_cache (hash_t value) noexcept
 
- Public 成员函数 继承自 elc::defs::string_n::string_data_n::base_string_data_t< char_T >
 base_string_data_t () noexcept=default
 
 base_string_data_t (never_ref_num_zero_t) noexcept
 
bool is_unique () noexcept
 
virtual ~base_string_data_t () noexcept(destruct_nothrow)=default
 
virtual string_ptr_t get_c_str (ptr_t &) noexcept(get_data_nothrow)
 
virtual const_string_ptr_t get_const_c_str (ptr_t &p) noexcept(get_data_nothrow)
 
virtual const char_Tget_data (ptr_t &p) noexcept(get_data_nothrow)
 
virtual string_ptr_t get_unique_c_str (ptr_t &) noexcept(get_data_nothrow)
 
virtual ptr_t do_insert (size_t pos, string_view_t str) noexcept(copy_construct_nothrow)
 
virtual ptr_t do_insert (size_t pos, ptr_t str) noexcept
 
virtual ptr_t do_erase (size_t pos, size_t size) noexcept
 
bool equal_with (ptr_t with) noexcept(equal.nothrow< char_T >)
 
bool equal_with_same_size (ptr_t with) noexcept(equal.nothrow< char_T >)
 
bool equal_with (ptr_t with, size_t pos, size_t size) noexcept(equal.nothrow< char_T >)
 
bool equal_with (string_view_t with) noexcept(equal.nothrow< char_T >)
 
bool equal_with (const_string_ptr_t with) noexcept(equal.nothrow< char_T >)
 
compare_type compare_with (ptr_t with) noexcept(compare.nothrow< char_T >)
 
compare_type compare_with_same_size (ptr_t with) noexcept(compare.nothrow< char_T >)
 
compare_type compare_with (ptr_t with, size_t pos, size_t size) noexcept(compare.nothrow< char_T >)
 
compare_type compare_with (string_view_t with) noexcept(compare.nothrow< char_T >)
 
compare_type compare_with (const_string_ptr_t with) noexcept(compare.nothrow< char_T >)
 
hash_t get_hash (ptr_t &p) noexcept(hash_nothrow)
 
hash_t get_others_hash_with_calculated_before (hash_t before, size_t before_size, ptr_t &p, size_t pos, size_t size) noexcept(hash_nothrow)
 
float_size_t get_memory_cost () noexcept
 
float_size_t get_memory_cost_after_gc () noexcept
 
float_size_t get_gc_profit () noexcept
 
bool positive_gc_profit () noexcept
 
virtual const range_n::match_pattern< const char_T > & get_match_pattern_from_self (ptr_t &self) noexcept(copy_assign_nothrow &&move_construct_nothrow)
 
virtual const range_n::reverse_match_pattern< const char_T > & get_reverse_match_pattern_from_self (ptr_t &self) noexcept(copy_assign_nothrow &&move_construct_nothrow)
 
virtual ptr_t pre_alloc_before_begin (size_t size) noexcept
 
virtual ptr_t pre_alloc_after_end (size_t size) noexcept
 
virtual void do_output (text_ostream_t< char_T > &os)
 

Public 属性

ptr_t _before
 
ptr_t _after
 
size_t _before_size
 
size_t _after_size
 

静态 Public 属性

static constexpr bool copy_assign_nothrow
 
static constexpr bool copy_construct_nothrow
 
static constexpr bool move_construct_nothrow
 
static constexpr bool construct_nothrow
 
static constexpr bool destruct_nothrow
 
static constexpr bool clear_nothrow
 
static constexpr bool ptr_reset_nothrow
 
static constexpr bool hash_nothrow
 
static constexpr bool get_data_nothrow
 
static constexpr bool apply_data_nothrow
 
- 静态 Public 属性 继承自 elc::defs::string_n::string_data_n::base_string_data_t< char_T >
static constexpr bool copy_assign_nothrow =copy_assign.nothrow<char_T>
 
static constexpr bool copy_construct_nothrow =copy_construct.nothrow<char_T>
 
static constexpr bool move_construct_nothrow =move_construct.nothrow<char_T>
 
static constexpr bool construct_nothrow =construct<char_T>.nothrow<>
 
static constexpr bool destruct_nothrow =destruct.nothrow<char_T>
 
static constexpr bool clear_nothrow =destruct_nothrow
 
static constexpr bool ptr_reset_nothrow =destruct_nothrow
 
static constexpr bool hash_nothrow =hash.nothrow<char_T>
 
static constexpr bool get_data_nothrow =copy_construct_nothrow&&destruct_nothrow
 
static constexpr bool apply_data_nothrow =construct_nothrow&&copy_assign_nothrow
 

Protected 成员函数

virtual void copy_part_data_to (char_T *to, size_t pos, size_t size) noexcept(copy_assign_nothrow) override final
 
virtual hash_t get_hash_detail (ptr_t &) noexcept(hash_nothrow) override final
 
virtual hash_t get_others_hash_with_calculated_before_detail (hash_t before, size_t before_size, ptr_t &, size_t pos, size_t size) noexcept(hash_nothrow) override final
 
virtual bool same_struct (ptr_t with) noexcept override final
 
virtual range_t< const char_T * > get_the_largest_complete_data_block_begin_form (size_t begin) noexcept override final
 
virtual bool same_struct_equal (ptr_t with) noexcept(equal.nothrow< char_T >) override final
 
virtual base_t::compare_type same_struct_compare (ptr_t with) noexcept(compare.nothrow< char_T >) override final
 
virtual float_size_t get_base_memory_cost () noexcept override final
 
- Protected 成员函数 继承自 elc::defs::string_n::string_data_n::base_string_data_t< char_T >
bool same_type (ptr_t a) noexcept
 
bool default_equal_method (ptr_t with) noexcept(equal.nothrow< char_T >)
 
compare_type default_compare_method (ptr_t with) noexcept(compare.nothrow< char_T >)
 
bool has_hash_cache () noexcept
 
void reset_hash_cache () noexcept
 
hash_t get_hash_cache () noexcept
 
hash_t set_hash_cache (hash_t value) noexcept
 
void self_changed () noexcept
 

额外继承的成员函数

- 静态 Protected 成员函数 继承自 elc::defs::string_n::string_data_n::base_string_data_t< char_T >
static void be_replace (this_t *a, ptr_t b) noexcept(ptr_reset_nothrow)
 
static void be_replace (ptr_t &a, ptr_t b) noexcept(ptr_reset_nothrow)
 
static void equivalent_optimization (auto &&a, auto &&b) noexcept(ptr_reset_nothrow)
 
- Protected 属性 继承自 elc::defs::string_n::string_data_n::base_string_data_t< char_T >
hash_t _hash_cache {}
 
bool _has_hash_cache =false
 

详细描述

template<typename char_T>
struct elc::defs::string_n::string_data_n::sum_string_data_t< char_T >

在文件 all_defs.cpp37446 行定义.

成员类型定义说明

◆ base_t

◆ const_string_ptr_t

◆ ptr_t

◆ string_ptr_t

◆ string_view_t

◆ this_t

构造及析构函数说明

◆ sum_string_data_t()

template<typename char_T >
elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::sum_string_data_t ( ptr_t  before,
ptr_t  after 
)
inlinenoexcept

成员函数说明

◆ apply_str_to_begin() [1/2]

template<typename char_T >
virtual ptr_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::apply_str_to_begin ( ptr_t  str)
inlinefinaloverridevirtualnoexcept

重载 elc::defs::string_n::string_data_n::base_string_data_t< char_T > .

在文件 all_defs.cpp37546 行定义.

37546 {
37547 if(this->is_unique()){
37548 _before=_before->apply_str_to_begin(str);
37549 _before_size+=str->get_size();
37550 self_changed();
37551 return this;
37552 }
37553 else
37554 return base_t::apply_str_to_begin(str);
37555 }
virtual ptr_t apply_str_to_begin(string_view_t str) noexcept(copy_construct_nothrow &&apply_data_nothrow)

◆ apply_str_to_begin() [2/2]

template<typename char_T >
virtual ptr_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::apply_str_to_begin ( string_view_t  str)
inlinefinaloverridevirtualnoexcept

重载 elc::defs::string_n::string_data_n::base_string_data_t< char_T > .

在文件 all_defs.cpp37536 行定义.

37536 {
37537 if(this->is_unique()){
37538 _before=_before->apply_str_to_begin(str);
37539 _before_size+=str.size();
37540 self_changed();
37541 return this;
37542 }
37543 else
37544 return base_t::apply_str_to_begin(str);
37545 }

◆ apply_str_to_end() [1/2]

template<typename char_T >
virtual ptr_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::apply_str_to_end ( ptr_t  str)
inlinefinaloverridevirtualnoexcept

重载 elc::defs::string_n::string_data_n::base_string_data_t< char_T > .

在文件 all_defs.cpp37566 行定义.

37566 {
37567 if(this->is_unique()){
37568 _after=_after->apply_str_to_end(str);
37569 _after_size+=str->get_size();
37570 self_changed();
37571 return this;
37572 }
37573 else
37574 return base_t::apply_str_to_end(str);
37575 }
virtual ptr_t apply_str_to_end(string_view_t str) noexcept(copy_construct_nothrow &&apply_data_nothrow)

◆ apply_str_to_end() [2/2]

template<typename char_T >
virtual ptr_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::apply_str_to_end ( string_view_t  str)
inlinefinaloverridevirtualnoexcept

重载 elc::defs::string_n::string_data_n::base_string_data_t< char_T > .

在文件 all_defs.cpp37556 行定义.

37556 {
37557 if(this->is_unique()){
37558 _after=_after->apply_str_to_end(str);
37559 _after_size+=str.size();
37560 self_changed();
37561 return this;
37562 }
37563 else
37564 return base_t::apply_str_to_end(str);
37565 }

◆ arec()

template<typename char_T >
virtual char_T elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::arec ( size_t  index)
inlinefinaloverridevirtualnoexcept

实现了 elc::defs::string_n::string_data_n::base_string_data_t< char_T >.

在文件 all_defs.cpp37519 行定义.

37519 {
37520 if(index<_before_size)
37521 return _before->arec(index);
37522 else
37523 return _after->arec(index-_before_size);
37524 }

◆ arec_set()

template<typename char_T >
virtual void elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::arec_set ( size_t  index,
char_T  a,
ptr_t p 
)
inlinefinaloverridevirtualnoexcept

实现了 elc::defs::string_n::string_data_n::base_string_data_t< char_T >.

在文件 all_defs.cpp37525 行定义.

37525 {
37526 if(this->is_unique()){
37527 if(index<_before_size)
37528 _before->arec_set(index,a,_before);
37529 else
37530 _after->arec_set(index-_before_size,a,_after);
37531 self_changed();
37532 }
37533 else
37534 base_t::arec_set(index,a,p);
37535 }
virtual void arec_set(size_t index, char_T a, ptr_t &p) noexcept(copy_assign_nothrow &&move_construct_nothrow)=0

◆ be_replace_as()

template<typename char_T >
virtual void elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::be_replace_as ( ptr_t  a)
inlinefinaloverridevirtualnoexcept

实现了 elc::defs::string_n::string_data_n::base_string_data_t< char_T >.

在文件 all_defs.cpp37487 行定义.

37487 {
37488 if(type_info<this_t> == typeid(*a)){
37489 const auto p = down_cast<this_t*>(a.get());
37490 if(_before_size==p->_before_size){
37491 if(_before!=p->_before)
37493 if(_after!=p->_after)
37495 }
37496 }
37497 _before.reset();
37498 _after.reset();
37500 }
virtual void be_replace_as(ptr_t a) noexcept(clear_nothrow)=0
static void equivalent_optimization(auto &&a, auto &&b) noexcept(ptr_reset_nothrow)

◆ copy_part_data_to()

template<typename char_T >
virtual void elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::copy_part_data_to ( char_T to,
size_t  pos,
size_t  size 
)
inlinefinaloverrideprotectedvirtualnoexcept

实现了 elc::defs::string_n::string_data_n::base_string_data_t< char_T >.

在文件 all_defs.cpp37503 行定义.

37503 {
37504 if(pos<_before_size){
37505 const auto copy_before_begin=pos;
37506 const auto copy_before_end=min(pos+size,_before_size);
37508 _before->copy_part_data_to(to,copy_before_begin,copy_before_size);
37509 if(size!=copy_before_size){
37512 _after->copy_part_data_to(to,0,copy_after_size);
37513 }
37514 }
37515 else
37516 _after->copy_part_data_to(to,pos-_before_size,size);
37517 }
constexpr size_t size(::size_t v)
constexpr to_t< T > to(T v)
constexpr struct elc::defs::base::min_t min

◆ do_pop_back()

template<typename char_T >
virtual ptr_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::do_pop_back ( size_t  size,
ptr_t self 
)
inlinefinaloverridevirtualnoexcept

重载 elc::defs::string_n::string_data_n::base_string_data_t< char_T > .

在文件 all_defs.cpp37620 行定义.

37620 {
37621 if(this->is_unique() && _after_size>=size){
37622 ptr_t aret;
37623 if(_before_size==size)
37624 swap(aret,_after);
37625 else
37626 aret=_after->do_pop_back(size,_after);
37628 if(!_after_size)
37630 self_changed();
37631 return aret;
37632 }
37633 else
37634 return base_t::do_pop_back(size,self);
37635 }
void swap(string_t< T > &a, string_t< T > &b) noexcept
virtual ptr_t do_pop_back(size_t size, ptr_t &self) noexcept(construct_nothrow &&copy_assign_nothrow)
函数调用图:

◆ do_pop_front()

template<typename char_T >
virtual ptr_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::do_pop_front ( size_t  size,
ptr_t self 
)
inlinefinaloverridevirtualnoexcept

重载 elc::defs::string_n::string_data_n::base_string_data_t< char_T > .

在文件 all_defs.cpp37604 行定义.

37604 {
37605 if(this->is_unique() && _before_size>=size){
37606 ptr_t aret;
37607 if(_before_size==size)
37608 swap(aret,_before);
37609 else
37610 aret=_before->do_pop_front(size,_before);
37612 if(!_before_size)
37614 self_changed();
37615 return aret;
37616 }
37617 else
37618 return base_t::do_pop_front(size,self);
37619 }
virtual ptr_t do_pop_front(size_t size, ptr_t &self) noexcept(construct_nothrow &&copy_assign_nothrow)
函数调用图:

◆ do_remove_back()

template<typename char_T >
virtual ptr_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::do_remove_back ( size_t  size)
inlinefinaloverridevirtualnoexcept

重载 elc::defs::string_n::string_data_n::base_string_data_t< char_T > .

在文件 all_defs.cpp37590 行定义.

37590 {
37591 if(_after_size==size)
37592 return _before;
37593 if(_after_size<size)
37594 return _before->do_remove_back(size-_after_size);
37595 if(this->is_unique()){
37596 _after=_after->do_remove_back(size);
37598 self_changed();
37599 return this;
37600 }
37601 else
37602 return base_t::do_remove_back(size);
37603 }
virtual ptr_t do_remove_back(size_t size) noexcept(construct_nothrow &&copy_assign_nothrow)

◆ do_remove_front()

template<typename char_T >
virtual ptr_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::do_remove_front ( size_t  size)
inlinefinaloverridevirtualnoexcept

重载 elc::defs::string_n::string_data_n::base_string_data_t< char_T > .

在文件 all_defs.cpp37576 行定义.

37576 {
37577 if(_before_size==size)
37578 return _after;
37579 if(_before_size<size)
37580 return _after->do_remove_front(size-_before_size);
37581 if(this->is_unique()){
37582 _before=_before->do_remove_front(size);
37584 self_changed();
37585 return this;
37586 }
37587 else
37588 return base_t::do_remove_front(size);
37589 }
virtual ptr_t do_remove_front(size_t size) noexcept(construct_nothrow &&copy_assign_nothrow)

◆ get_base_memory_cost()

template<typename char_T >
virtual float_size_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::get_base_memory_cost ( )
inlinefinaloverrideprotectedvirtualnoexcept

实现了 elc::defs::string_n::string_data_n::base_string_data_t< char_T >.

在文件 all_defs.cpp37687 行定义.

37687 {
37688 return float_size_of(*this)+_before->get_memory_cost()+_after->get_memory_cost();
37689 }
#define float_size_of(...)
Definition all_defs.cpp:576

◆ get_hash_detail()

template<typename char_T >
virtual hash_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::get_hash_detail ( ptr_t )
inlinefinaloverrideprotectedvirtualnoexcept

重载 elc::defs::string_n::string_data_n::base_string_data_t< char_T > .

在文件 all_defs.cpp37637 行定义.

37637 {
37638 push_and_disable_msvc_warning(26494);//未初始化警告diss
37639 hash_t result;
37641 if(_before_size){
37642 result=_before->get_hash(_before);
37643 if(_after_size)
37644 result=hash.merge_array_hash_results(result,_before_size,_after->get_hash(_after),_after_size);
37645 }
37646 else
37647 result=_after->get_hash(_after);
37648 return result;
37649 }
#define hash
#define pop_msvc_warning()
Definition all_defs.cpp:478
#define push_and_disable_msvc_warning(...)
Definition all_defs.cpp:479
hash_n::hash_value_t hash_t

◆ get_others_hash_with_calculated_before_detail()

template<typename char_T >
virtual hash_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::get_others_hash_with_calculated_before_detail ( hash_t  before,
size_t  before_size,
ptr_t ,
size_t  pos,
size_t  size 
)
inlinefinaloverrideprotectedvirtualnoexcept

重载 elc::defs::string_n::string_data_n::base_string_data_t< char_T > .

在文件 all_defs.cpp37650 行定义.

37650 {
37651 if(pos<_before_size){
37652 const auto calculate_before_begin=pos;
37653 const auto calculate_before_end=min(pos+size,_before_size);
37655 before=_before->get_others_hash_with_calculated_before(before,before_size,_before,calculate_before_begin,calculate_before_size);
37656 if(size!=calculate_before_size){
37659 before=_after->get_others_hash_with_calculated_before(before,before_size,_after,0,calculate_after_size);
37660 }
37661 }
37662 else
37663 before=_after->get_others_hash_with_calculated_before(before,before_size,_after,pos-_before_size,size);
37664 return before;
37665 }

◆ get_size()

template<typename char_T >
virtual size_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::get_size ( )
inlinefinaloverridevirtualnoexcept

◆ get_substr_data()

template<typename char_T >
virtual ptr_t elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::get_substr_data ( size_t  begin,
size_t  size 
)
inlinefinaloverridevirtualnoexcept

重载 elc::defs::string_n::string_data_n::base_string_data_t< char_T > .

在文件 all_defs.cpp37479 行定义.

37479 {
37480 if(begin+size<=_before_size)
37481 return _before->get_substr_data(begin,size);
37482 elseif(begin>=_before_size)
37483 return _after->get_substr_data(begin-_before_size,size);
37484 else
37485 return base_t::get_substr_data(begin,size);
37486 }
virtual ptr_t get_substr_data(size_t begin, size_t size) noexcept

◆ get_the_largest_complete_data_block_begin_form()

template<typename char_T >
virtual range_t< const char_T * > elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::get_the_largest_complete_data_block_begin_form ( size_t  begin)
inlinefinaloverrideprotectedvirtualnoexcept

实现了 elc::defs::string_n::string_data_n::base_string_data_t< char_T >.

在文件 all_defs.cpp37671 行定义.

37671 {
37672 if(begin < _before_size)
37673 return _before->get_the_largest_complete_data_block_begin_form(begin);
37674 else
37675 return _after->get_the_largest_complete_data_block_begin_form(begin - _before_size);
37676 }

◆ same_struct()

template<typename char_T >
virtual bool elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::same_struct ( ptr_t  with)
inlinefinaloverrideprotectedvirtualnoexcept

实现了 elc::defs::string_n::string_data_n::base_string_data_t< char_T >.

在文件 all_defs.cpp37667 行定义.

37667 {
37668 auto wp=down_cast<this_t*>(with.get());
37669 return _before_size==wp->_before_size;//总size被保证一样
37670 }

◆ same_struct_compare()

template<typename char_T >
virtual base_t::compare_type elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::same_struct_compare ( ptr_t  with)
inlinefinaloverrideprotectedvirtualnoexcept

实现了 elc::defs::string_n::string_data_n::base_string_data_t< char_T >.

在文件 all_defs.cpp37681 行定义.

37681 {
37682 auto wp=down_cast<this_t*>(with.get());
37683 if(auto tmp=this->_before->compare_with_same_size(wp->_before); tmp!=0)
37684 return tmp;
37685 return this->_after->compare_with_same_size(wp->_after);
37686 }

◆ same_struct_equal()

template<typename char_T >
virtual bool elc::defs::string_n::string_data_n::sum_string_data_t< char_T >::same_struct_equal ( ptr_t  with)
inlinefinaloverrideprotectedvirtualnoexcept

实现了 elc::defs::string_n::string_data_n::base_string_data_t< char_T >.

在文件 all_defs.cpp37677 行定义.

37677 {
37678 auto wp=down_cast<this_t*>(with.get());
37679 return this->_before->equal_with_same_size(wp->_before) && this->_after->equal_with_same_size(wp->_after);
37680 }

◆ self_changed()

template<typename char_T >
void elc::defs::string_n::string_data_n::base_string_data_t< char_T >::self_changed ( )
inlinenoexcept

在文件 all_defs.cpp35950 行定义.

◆ set_hash_cache()

类成员变量说明

◆ _after

◆ _after_size

在文件 all_defs.cpp37470 行定义.

◆ _before

◆ _before_size

在文件 all_defs.cpp37469 行定义.

◆ apply_data_nothrow

在文件 all_defs.cpp35573 行定义.

◆ clear_nothrow

在文件 all_defs.cpp35569 行定义.

◆ construct_nothrow

在文件 all_defs.cpp35567 行定义.

◆ copy_assign_nothrow

template<typename char_T >
constexpr bool elc::defs::string_n::string_data_n::base_string_data_t< char_T >::copy_assign_nothrow
staticconstexpr

在文件 all_defs.cpp35564 行定义.

◆ copy_construct_nothrow

template<typename char_T >
constexpr bool elc::defs::string_n::string_data_n::base_string_data_t< char_T >::copy_construct_nothrow
staticconstexpr

在文件 all_defs.cpp35565 行定义.

◆ destruct_nothrow

在文件 all_defs.cpp35568 行定义.

◆ get_data_nothrow

在文件 all_defs.cpp35572 行定义.

◆ hash_nothrow

在文件 all_defs.cpp35571 行定义.

◆ move_construct_nothrow

template<typename char_T >
constexpr bool elc::defs::string_n::string_data_n::base_string_data_t< char_T >::move_construct_nothrow
staticconstexpr

在文件 all_defs.cpp35566 行定义.

◆ ptr_reset_nothrow

在文件 all_defs.cpp35570 行定义.


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