|
The Psyche Project
|
The CharacterConstant class. More...
#include <Lexeme_Constant.h>
Public Types | |
| enum | Variant : std::uint8_t { Plain_u_char, L_wchar_t, u_char16_t, U_char32_t } |
| The CharacterConstant::Variant enumeration. | |
Public Types inherited from psy::C::Lexeme | |
| enum | LexemeKind : std::uint16_t { Identifier, IntegerConstant, FloatingConstant, CharacterConstant, ImaginaryIntegerConstant, ImaginaryFloatingConstant, StringLiteral } |
| The LexemeKind enumeraiton. | |
Public Types inherited from psy::TextElement | |
| typedef const char * | iterator |
| typedef iterator | const_iterator |
Public Member Functions | |
| Variant | variant () const |
| CharacterConstant (const char *chars, unsigned int size) | |
| virtual CharacterConstant * | asCharacterConstant () override |
| virtual const CharacterConstant * | asCharacterConstant () const override |
Public Member Functions inherited from psy::C::Lexeme | |
| LexemeKind | kind () const |
| std::string | valueText () const |
| template<class ValueT > | |
| ValueT | value () const |
| template<> | |
| int | value () const |
| template<> | |
| long | value () const |
| template<> | |
| long long | value () const |
| template<> | |
| unsigned long | value () const |
| template<> | |
| unsigned long long | value () const |
| template<> | |
| float | value () const |
| template<> | |
| double | value () const |
| template<> | |
| long double | value () const |
| template<> | |
| unsigned char | value () const |
| template<> | |
| wchar_t | value () const |
| template<> | |
| char16_t | value () const |
| template<> | |
| char32_t | value () const |
| virtual Identifier * | asIdentifier () |
| virtual const Identifier * | asIdentifier () const |
| virtual IntegerConstant * | asIntegerConstant () |
| virtual const IntegerConstant * | asIntegerConstant () const |
| virtual FloatingConstant * | asFloatingConstant () |
| virtual const FloatingConstant * | asFloatingConstant () const |
| virtual ImaginaryIntegerConstant * | asImaginaryIntegerConstant () |
| virtual const ImaginaryIntegerConstant * | asImaginaryIntegerConstant () const |
| virtual ImaginaryFloatingConstant * | asImaginaryFloatingConstant () |
| virtual const ImaginaryFloatingConstant * | asImaginaryFloatingConstant () const |
| virtual StringLiteral * | asStringLiteral () |
| virtual const StringLiteral * | asStringLiteral () const |
Public Member Functions inherited from psy::TextElement | |
| TextElement (const char *c_str, unsigned int size) | |
| TextElement (const TextElement &other)=delete | |
| void | operator= (const TextElement &other)=delete |
| iterator | begin () const |
| iterator | end () const |
| char | at (unsigned int idx) const |
| const char * | c_str () const |
| unsigned int | size () const |
| unsigned int | length () const |
Additional Inherited Members | |
Protected Member Functions inherited from psy::C::Lexeme | |
| Lexeme (const Lexeme &)=delete | |
| Lexeme & | operator= (const Lexeme &)=delete |
| Lexeme (const char *chars, unsigned int size, LexemeKind kind) | |
Protected Attributes inherited from psy::C::Lexeme | |
| union { | |
| std::uint16_t BF_all_ | |
| BitFields BF_ | |
| }; | |
The CharacterConstant class.
|
inlineoverridevirtual |
Cast this Lexeme as a CharacterConstant.
Reimplemented from psy::C::Lexeme.
|
inlineoverridevirtual |
Cast this Lexeme as a CharacterConstant.
Reimplemented from psy::C::Lexeme.
| CharacterConstant::Variant CharacterConstant::variant | ( | ) | const |
The Variant of this CharacterConstant.
1.8.18