IDL compiler front-end library
Public Types | Public Member Functions | List of all members
AST::ValueType Class Reference

Value type definition. More...

#include <ValueType.h>

Inheritance diagram for AST::ValueType:
AST::IV_Base AST::ItemScope AST::Container AST::ForwardDeclarable AST::ItemWithId AST::ContainerT< Item > AST::NamedItem AST::Item AST::Location

Public Types

enum class  Modifier { }
 Value type modifier. More...
 
- Public Types inherited from AST::Item
enum class  Kind {
  ROOT , INCLUDE , NATIVE , TYPE_DEF ,
  CONSTANT , MODULE , MODULE_ITEMS , INTERFACE_DECL ,
  INTERFACE , OPERATION , PARAMETER , ATTRIBUTE ,
  EXCEPTION , STRUCT_DECL , STRUCT , MEMBER ,
  UNION_DECL , UNION , UNION_ELEMENT , ENUM ,
  ENUM_ITEM , VALUE_TYPE_DECL , VALUE_TYPE , VALUE_BOX ,
  STATE_MEMBER , VALUE_FACTORY
}
 The kind of item. More...
 

Public Member Functions

Modifier modifier () const noexcept
 
const ValueTypesbases () const noexcept
 
const Interfacessupports () const noexcept
 
- Public Member Functions inherited from AST::ItemScope
 operator Symbols & () noexcept
 
 operator const Symbols & () const noexcept
 
- Public Member Functions inherited from AST::ItemWithId
std::string repository_id () const
 
- Public Member Functions inherited from AST::NamedItem
const Identifiername () const noexcept
 
const ItemScopeparent () const noexcept
 
std::string qualified_name () const
 
ScopedName scoped_name () const
 
const Symbolsparent_scope () const noexcept
 
- Public Member Functions inherited from AST::Item
Kind kind () const noexcept
 
bool is_type () const noexcept
 
bool is_forward_decl () const noexcept
 
- Public Member Functions inherited from AST::Location
const std::filesystem::path & file () const noexcept
 
unsigned line () const noexcept
 
- Public Member Functions inherited from AST::Container
bool visit (CodeGen &cg) const
 
- Public Member Functions inherited from AST::ForwardDeclarable
bool has_forward_dcl () const
 

Additional Inherited Members

- Static Public Member Functions inherited from AST::ItemScope
static const ItemScopecast (const NamedItem *item) noexcept
 
static ItemScopecast (NamedItem *item) noexcept
 
- Static Public Member Functions inherited from AST::ItemWithId
static const ItemWithIdcast (const NamedItem *item) noexcept
 

Detailed Description

Value type definition.

Invariant
kind () == Item::Kind::VALUE_TYPE

Child item types:

Examples
Printer.cpp.

Definition at line 59 of file ValueType.h.

Member Enumeration Documentation

◆ Modifier

Value type modifier.

Enumerator
CUSTOM 

custom

ABSTRACT 

abstract

TRUNCATABLE 

truncatable

Definition at line 64 of file ValueType.h.

Member Function Documentation

◆ modifier()

Modifier AST::ValueType::modifier ( ) const
inlinenoexcept
Returns
The value type modifier.

Definition at line 73 of file ValueType.h.

◆ bases()

const ValueTypes& AST::ValueType::bases ( ) const
inlinenoexcept
Returns
The base value types.

Definition at line 79 of file ValueType.h.

◆ supports()

const Interfaces& AST::ValueType::supports ( ) const
inlinenoexcept
Returns
The supported interfaces.

Definition at line 85 of file ValueType.h.


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