libxr  1.0
Want to be the best embedded framework
Loading...
Searching...
No Matches
LibXR::Print::Writer::Spec Struct Reference

运行期对单个字段描述字节组的解码视图 / Runtime view of one decoded field specification byte group More...

Public Member Functions

constexpr bool LeftAlign () const
 判断是否请求了左对齐 / Return whether left alignment is requested
 
constexpr bool ForceSign () const
 判断是否请求了显式正号输出 / Return whether explicit plus-sign output is requested
 
constexpr bool CenterAlign () const
 判断是否请求了居中对齐 / Return whether center alignment is requested
 
constexpr bool SpaceSign () const
 判断是否请求了正值前补空格的符号策略 / Return whether space-sign output for positive values is requested
 
constexpr bool Alternate () const
 判断是否请求了备用格式 / Return whether alternate form is requested
 
constexpr bool ZeroPad () const
 判断是否请求了零填充 / Return whether zero-padding is requested
 
constexpr bool UpperCase () const
 判断是否请求了大写输出 / Return whether uppercase output is requested
 
constexpr bool HasPrecision () const
 判断是否显式指定了精度 / Return whether precision was explicitly specified
 

Data Fields

uint8_t flags = 0
 FormatFlag bitset / 字段修饰位集合
 
char fill = ' '
 field fill character / 字段填充字符
 
uint8_t width = 0
 field width, or zero when absent / 字段宽度,未指定时为 0
 
uint8_t precision = unspecified_precision
 

Detailed Description

运行期对单个字段描述字节组的解码视图 / Runtime view of one decoded field specification byte group

Definition at line 187 of file writer.hpp.

Member Function Documentation

◆ Alternate()

bool LibXR::Print::Writer::Spec::Alternate ( ) const
inlinenodiscardconstexpr

判断是否请求了备用格式 / Return whether alternate form is requested

Returns
开启备用格式时返回 true,否则返回 false / Returns true when alternate form is enabled, otherwise false

Definition at line 242 of file writer.hpp.

243 {
244 return Writer::HasFlag(flags, static_cast<uint8_t>(FormatFlag::Alternate));
245 }
static constexpr bool HasFlag(uint8_t flags, uint8_t bit)
判断某个已解码字段修饰位是否被设置 / Test whether one decoded field-spec bit is set
Definition writer.hpp:178
uint8_t flags
FormatFlag bitset / 字段修饰位集合
Definition writer.hpp:189

◆ CenterAlign()

bool LibXR::Print::Writer::Spec::CenterAlign ( ) const
inlinenodiscardconstexpr

判断是否请求了居中对齐 / Return whether center alignment is requested

Returns
开启居中对齐时返回 true,否则返回 false / Returns true when center alignment is enabled, otherwise false

Definition at line 221 of file writer.hpp.

222 {
223 return Writer::HasFlag(flags, static_cast<uint8_t>(FormatFlag::CenterAlign));
224 }

◆ ForceSign()

bool LibXR::Print::Writer::Spec::ForceSign ( ) const
inlinenodiscardconstexpr

判断是否请求了显式正号输出 / Return whether explicit plus-sign output is requested

Returns
开启显式正号输出时返回 true,否则返回 false / Returns true when explicit plus-sign output is enabled, otherwise false

Definition at line 211 of file writer.hpp.

212 {
213 return Writer::HasFlag(flags, static_cast<uint8_t>(FormatFlag::ForceSign));
214 }

◆ HasPrecision()

bool LibXR::Print::Writer::Spec::HasPrecision ( ) const
inlinenodiscardconstexpr

判断是否显式指定了精度 / Return whether precision was explicitly specified

Returns
显式给出精度时返回 true,否则返回 false / Returns true when precision is present, otherwise false

Definition at line 272 of file writer.hpp.

273 {
275 }
static constexpr uint8_t unspecified_precision
为某个已编译参数列表生成栈上参数字节块 / Emit the stack argument byte blob for one compiled argument list
Definition writer.hpp:168

◆ LeftAlign()

bool LibXR::Print::Writer::Spec::LeftAlign ( ) const
inlinenodiscardconstexpr

判断是否请求了左对齐 / Return whether left alignment is requested

Returns
开启左对齐时返回 true,否则返回 false / Returns true when left alignment is enabled, otherwise false

Definition at line 200 of file writer.hpp.

201 {
202 return Writer::HasFlag(flags, static_cast<uint8_t>(FormatFlag::LeftAlign));
203 }

◆ SpaceSign()

bool LibXR::Print::Writer::Spec::SpaceSign ( ) const
inlinenodiscardconstexpr

判断是否请求了正值前补空格的符号策略 / Return whether space-sign output for positive values is requested

Returns
开启空格符号策略时返回 true,否则返回 false / Returns true when the space-sign policy is enabled, otherwise false

Definition at line 232 of file writer.hpp.

233 {
234 return Writer::HasFlag(flags, static_cast<uint8_t>(FormatFlag::SpaceSign));
235 }

◆ UpperCase()

bool LibXR::Print::Writer::Spec::UpperCase ( ) const
inlinenodiscardconstexpr

判断是否请求了大写输出 / Return whether uppercase output is requested

Returns
开启大写输出时返回 true,否则返回 false / Returns true when uppercase output is enabled, otherwise false

Definition at line 262 of file writer.hpp.

263 {
264 return Writer::HasFlag(flags, static_cast<uint8_t>(FormatFlag::UpperCase));
265 }

◆ ZeroPad()

bool LibXR::Print::Writer::Spec::ZeroPad ( ) const
inlinenodiscardconstexpr

判断是否请求了零填充 / Return whether zero-padding is requested

Returns
开启零填充时返回 true,否则返回 false / Returns true when zero-padding is enabled, otherwise false

Definition at line 252 of file writer.hpp.

253 {
254 return Writer::HasFlag(flags, static_cast<uint8_t>(FormatFlag::ZeroPad));
255 }

Field Documentation

◆ fill

char LibXR::Print::Writer::Spec::fill = ' '

field fill character / 字段填充字符

Definition at line 190 of file writer.hpp.

◆ flags

uint8_t LibXR::Print::Writer::Spec::flags = 0

FormatFlag bitset / 字段修饰位集合

Definition at line 189 of file writer.hpp.

◆ precision

uint8_t LibXR::Print::Writer::Spec::precision = unspecified_precision

precision, or unspecified_precision / 字段精度,未指定时为哨兵值

Definition at line 192 of file writer.hpp.

◆ width

uint8_t LibXR::Print::Writer::Spec::width = 0

field width, or zero when absent / 字段宽度,未指定时为 0

Definition at line 191 of file writer.hpp.


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