ELC in dev
ELC-lang
载入中...
搜索中...
未找到
elc::defs::base::literal_support::fast_integer_iterator< integer_T, base > 模板类 参考

Public 成员函数

constexpr fast_integer_iterator (integer_T &val) noexcept
 
constexpr void operator() (char c) noexcept
 
constexpr ~fast_integer_iterator () noexcept
 

详细描述

template<class integer_T, unsigned base>
class elc::defs::base::literal_support::fast_integer_iterator< integer_T, base >

在文件 all_defs.cpp2480 行定义.

构造及析构函数说明

◆ fast_integer_iterator()

template<class integer_T , unsigned base>
constexpr elc::defs::base::literal_support::fast_integer_iterator< integer_T, base >::fast_integer_iterator ( integer_T val)
inlineconstexprnoexcept

在文件 all_defs.cpp2484 行定义.

2484:_val(val){}
constexpr T down_cast(U a) noexcept
向下转型至

◆ ~fast_integer_iterator()

在文件 all_defs.cpp2497 行定义.

2497 {
2498 _val=move(_val)*_scale+_var_block;
2499 }
constexpr struct elc::defs::memory::lifetime_n::move_t move

成员函数说明

◆ operator()()

template<class integer_T , unsigned base>
constexpr void elc::defs::base::literal_support::fast_integer_iterator< integer_T, base >::operator() ( char  c)
inlineconstexprnoexcept

在文件 all_defs.cpp2485 行定义.

2485 {
2486 const size_t new_scale=_scale*base;
2487 if(_scale>new_scale){//溢出,建立新块
2488 _val=move(_val)*_scale+_var_block;
2489 _var_block=hexval(c);
2490 _scale=base;
2491 }
2492 else{
2493 _var_block=_var_block*base+hexval(c);
2494 _scale=new_scale;
2495 }
2496 }
constexpr uint8_t hexval(char c) noexcept
函数调用图:

该类的文档由以下文件生成: