| 
    IDL compiler front-end library
    
   | 
 
Stores the constant value. More...
#include <Variant.h>
  
Public Types | |
| enum class | VT {  EMPTY , BOOLEAN , OCTET , CHAR , WCHAR , USHORT , ULONG , ULONGLONG , SHORT , LONG , LONGLONG , FLOAT , DOUBLE , LONGDOUBLE , STRING , WSTRING , FIXED , ENUM_ITEM , CONSTANT }  | 
| Value vtype.  More... | |
Public Member Functions | |
| VT | vtype () const noexcept | 
| bool | as_bool () const noexcept | 
| uint8_t | as_octet () const noexcept | 
| char | as_char () const noexcept | 
| wchar_t | as_wchar () const noexcept | 
| uint16_t | as_unsigned_short () const noexcept | 
| int16_t | as_short () const noexcept | 
| uint32_t | as_unsigned_long () const noexcept | 
| int32_t | as_long () const noexcept | 
| uint64_t | as_unsigned_long_long () const noexcept | 
| int64_t | as_long_long () const noexcept | 
| float | as_float () const noexcept | 
| double | as_double () const noexcept | 
| long double | as_long_double () const noexcept | 
| const std::string & | as_string () const noexcept | 
| const std::wstring & | as_wstring () const noexcept | 
| const EnumItem & | as_enum_item () const noexcept | 
| const Constant & | as_constant () const noexcept | 
| const Fixed & | as_Fixed () const noexcept | 
| std::string | to_string () const | 
| bool | empty () const noexcept | 
| const Variant & | dereference_const () const noexcept | 
| ~Variant () | |
| Destructor.  | |
| Variant () | |
| VT::EMPTY.  | |
| Variant (const Variant &src) | |
| Copy constructor.  | |
| Variant (Variant &&src) noexcept | |
| Move constructor.  | |
| Variant (bool v) noexcept | |
| VT::BOOLEAN.  | |
| Variant (uint8_t v) noexcept | |
| VT::OCTET.  | |
| Variant (char v) noexcept | |
| VT::CHAR.  | |
| Variant (wchar_t v) noexcept | |
| VT::WCHAR.  | |
| Variant (int16_t v) noexcept | |
| VT::SHORT.  | |
| Variant (uint16_t v) noexcept | |
| VT::USHORT.  | |
| Variant (int32_t v) noexcept | |
| VT::LONG.  | |
| Variant (uint32_t v) noexcept | |
| VT::ULONG.  | |
| Variant (int64_t v) noexcept | |
| VT::LONGLONG.  | |
| Variant (uint64_t v) noexcept | |
| VT::ULONGLONG.  | |
| Variant (float v) noexcept | |
| VT::FLOAT.  | |
| Variant (double v) noexcept | |
| VT::DOUBLE.  | |
| Variant (long double v) noexcept | |
| VT::LONGDOUBLE.  | |
| Variant (std::string &&v) noexcept | |
| VT::STRING.  | |
| Variant (const char *s) | |
| VT::STRING.  | |
| Variant (std::wstring &&v) noexcept | |
| VT::WSTRING.  | |
| Variant (const wchar_t *s) | |
| VT::WSTRING.  | |
| Variant (const Fixed &v) noexcept | |
| VT::FIXED.  | |
| Variant (const EnumItem &item) noexcept | |
| VT::ENUM_ITEM.  | |
| Variant (const Constant &constant) noexcept | |
| VT::CONSTANT.  | |
| Variant & | operator= (const Variant &src) | 
| Copy assignment.  | |
| Variant & | operator= (Variant &&src) noexcept | 
| Move assignment.  | |
      
  | 
  strong | 
Value vtype.
| Enumerator | |
|---|---|
| EMPTY | No value.  | 
| BOOLEAN | |
| OCTET | |
| CHAR | |
| WCHAR | |
| USHORT | |
| ULONG | |
| ULONGLONG | |
| SHORT | |
| LONG | |
| LONGLONG | |
| FLOAT | |
| DOUBLE | |
| LONGDOUBLE | |
| STRING | |
| WSTRING | |
| FIXED | Variant::as_Fixed ();.  | 
| ENUM_ITEM | |
| CONSTANT | |
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
unsigned short value. 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
unsigned long long value. 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
long double value. 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
      
  | 
  inlinenoexcept | 
| std::string AST::Variant::to_string | ( | ) | const | 
Converts value to std::string. This method escapes character and string values accordingly to C constant escape rules. This method does not add 'L' prefix to wide strings and characters and does not add 'D' suffix to fixed numbers.
      
  | 
  inlinenoexcept | 
      
  | 
  noexcept |