GCC Middle and Back End API Reference
text_art::styled_unichar Class Reference

#include <types.h>

Public Member Functions

 styled_unichar ()
 styled_unichar (cppchar_t ch)
 styled_unichar (cppchar_t ch, bool emoji, style::id_t style_id)
cppchar_t get_code () const
bool emoji_variant_p () const
style::id_t get_style_id () const
bool double_width_p () const
bool operator== (const styled_unichar &other) const
void set_emoji_variant ()
int get_canvas_width () const
void add_combining_char (cppchar_t ch)
const std::vector< cppchar_t > get_combining_chars () const

Private Attributes

cppchar_t m_code: 24
bool m_emoji_variant_p: 1
style::id_t m_style_id: 7
std::vector< cppchar_t > m_combining_chars

Friends

class styled_string

Constructor & Destructor Documentation

◆ styled_unichar() [1/3]

text_art::styled_unichar::styled_unichar ( )
inlineexplicit

References m_code, and m_style_id.

Referenced by operator==().

◆ styled_unichar() [2/3]

text_art::styled_unichar::styled_unichar ( cppchar_t ch)
inlineexplicit

◆ styled_unichar() [3/3]

text_art::styled_unichar::styled_unichar ( cppchar_t ch,
bool emoji,
style::id_t style_id )
inlineexplicit

Member Function Documentation

◆ add_combining_char()

void text_art::styled_unichar::add_combining_char ( cppchar_t ch)
inline

References m_combining_chars.

◆ double_width_p()

bool text_art::styled_unichar::double_width_p ( ) const
inline

References gcc_assert, and get_code().

Referenced by text_art::canvas::print_to_pp().

◆ emoji_variant_p()

bool text_art::styled_unichar::emoji_variant_p ( ) const
inline

◆ get_canvas_width()

int text_art::styled_unichar::get_canvas_width ( ) const
inline

References m_code.

◆ get_code()

cppchar_t text_art::styled_unichar::get_code ( ) const
inline

◆ get_combining_chars()

const std::vector< cppchar_t > text_art::styled_unichar::get_combining_chars ( ) const
inline

References m_combining_chars.

◆ get_style_id()

style::id_t text_art::styled_unichar::get_style_id ( ) const
inline

◆ operator==()

bool text_art::styled_unichar::operator== ( const styled_unichar & other) const
inline

◆ set_emoji_variant()

void text_art::styled_unichar::set_emoji_variant ( )
inline

References m_emoji_variant_p.

◆ styled_string

friend class styled_string
friend

References styled_string.

Referenced by styled_string.

Field Documentation

◆ m_code

cppchar_t text_art::styled_unichar::m_code
private

◆ m_combining_chars

std::vector<cppchar_t> text_art::styled_unichar::m_combining_chars
private

◆ m_emoji_variant_p

bool text_art::styled_unichar::m_emoji_variant_p
private

◆ m_style_id

style::id_t text_art::styled_unichar::m_style_id
private

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