|
Bond 0.9
C++ Bond Runtime Library API Documentation
|
These classes define all of the types of ParseNodes that form the parse trees generated by the Bond compiler. More...
Files | |
| file | include/bond/compiler/parsenodesfwd.h |
| Forward declarations of all ParseNode classes, which are defined in bond/compiler/parsenodes.h. | |
Classes | |
| class | Bond::ParseNode |
| Base class for all parse tree nodes. More... | |
| class | Bond::ListParseNode |
| Base class for parse nodes that can be linked into singly linked lists. More... | |
| class | Bond::ParseNodeList< NodeType > |
| Helper container for singly linked lists of parse nodes, which tracks the tail of the list so that nodes can be appended in constant time. It does not own the nodes. More... | |
| class | Bond::Symbol |
| Base class for named entities that participate in symbol lookup. More... | |
| class | Bond::TypeDescriptor |
| Describes a resolved or partially resolved Bond type. More... | |
| class | Bond::TypeSpecifier |
| Represents a parsed type specifier. More... | |
| class | Bond::QualifiedIdentifier |
| Represents a potentially qualified identifier. More... | |
| class | Bond::TranslationUnit |
| Represents a complete parsed source file. More... | |
| class | Bond::IncludeDirective |
| Represents an include directive. More... | |
| class | Bond::NamespaceDefinition |
| Represents a namespace definition. More... | |
| class | Bond::NativeBlock |
| Represents a native declaration block. More... | |
| class | Bond::EnumDeclaration |
| Represents an enum declaration. More... | |
| class | Bond::Enumerator |
| Represents a single enum value. More... | |
| class | Bond::StructDeclaration |
| Represents a struct declaration. More... | |
| class | Bond::FunctionPrototype |
| Represents a function signature. More... | |
| class | Bond::FunctionDefinition |
| Represents a function declaration or definition. More... | |
| class | Bond::Parameter |
| Represents a function parameter. More... | |
| class | Bond::NamedInitializer |
| Represents a named variable initializer. More... | |
| class | Bond::Initializer |
| Represents a scalar or aggregate initializer. More... | |
| class | Bond::CompoundStatement |
| Represents a block statement and its local scope. More... | |
| class | Bond::IfStatement |
| Represents an if/else statement. More... | |
| class | Bond::SwitchStatement |
| Represents a switch statement. More... | |
| class | Bond::SwitchSection |
| Represents one labeled section inside a switch statement. More... | |
| class | Bond::ResolvedSwitchLabel |
| Represents a resolved switch label used for code generation. More... | |
| class | Bond::SwitchLabel |
| Represents a case or default label in a switch section. More... | |
| class | Bond::WhileStatement |
| Represents a while or do-while loop. More... | |
| class | Bond::ForStatement |
| Represents a for loop and its local scope. More... | |
| class | Bond::JumpStatement |
| Represents a break, continue, or return statement. More... | |
| class | Bond::DeclarativeStatement |
| Represents a declarative statement with one or more named initializers. More... | |
| class | Bond::UsingDeclaration |
| Represents a using-declaration that aliases a single symbol into local scope. More... | |
| class | Bond::UsingDirective |
| Represents a using-directive that opens a namespace's symbols into local scope. More... | |
| class | Bond::Expression |
| Base class for expression nodes. More... | |
| class | Bond::ExpressionStatement |
| Represents a statement that evaluates an expression. More... | |
| class | Bond::ConditionalExpression |
| Represents a ternary conditional expression. More... | |
| class | Bond::BinaryExpression |
| Represents a binary operator expression. More... | |
| class | Bond::UnaryExpression |
| Represents a unary operator expression. More... | |
| class | Bond::PostfixExpression |
| Represents a postfix operator expression. More... | |
| class | Bond::MemberExpression |
| Represents member access on a struct-like value. More... | |
| class | Bond::ArraySubscriptExpression |
| Represents an array subscript expression. More... | |
| class | Bond::FunctionCallExpression |
| Represents a function call expression. More... | |
| class | Bond::CastExpression |
| Represents an explicit cast expression. More... | |
| class | Bond::PropertyofExpression |
| Represents sizeof/alignof style property queries. More... | |
| class | Bond::ConstantLiteralExpression |
| Represents a literal constant expression. More... | |
| class | Bond::IdentifierExpression |
| Represents an identifier expression. More... | |
| class | Bond::ThisExpression |
| Represents a this expression. More... | |
| class | Bond::EmptyExpression |
| Represents an intentionally empty expression. More... | |
Enumerations | |
| enum | Bond::Scope { Bond::SCOPE_GLOBAL , Bond::SCOPE_LOCAL , Bond::SCOPE_STRUCT_MEMBER } |
| Describes where a symbol is declared. More... | |
Variables | |
| BOND_API const TypeSpecifier | Bond::VOID_TYPE_SPECIFIER |
| Canonical void type specifier instance. | |
| BOND_API const TypeSpecifier | Bond::BOOL_TYPE_SPECIFIER |
| Canonical bool type specifier instance. | |
| BOND_API const TypeSpecifier | Bond::CHAR_TYPE_SPECIFIER |
| Canonical char type specifier instance. | |
| BOND_API const TypeSpecifier | Bond::INT_TYPE_SPECIFIER |
| Canonical int type specifier instance. | |
| BOND_API const TypeSpecifier | Bond::UINT_TYPE_SPECIFIER |
| Canonical uint type specifier instance. | |
| BOND_API const TypeSpecifier | Bond::LONG_TYPE_SPECIFIER |
| Canonical long type specifier instance. | |
| BOND_API const TypeSpecifier | Bond::ULONG_TYPE_SPECIFIER |
| Canonical ulong type specifier instance. | |
| BOND_API const TypeSpecifier | Bond::FLOAT_TYPE_SPECIFIER |
| Canonical float type specifier instance. | |
| BOND_API const TypeSpecifier | Bond::DOUBLE_TYPE_SPECIFIER |
| Canonical double type specifier instance. | |
These classes define all of the types of ParseNodes that form the parse trees generated by the Bond compiler.
| enum Bond::Scope |
|
extern |
Canonical bool type specifier instance.
|
extern |
Canonical char type specifier instance.
|
extern |
Canonical double type specifier instance.
|
extern |
Canonical float type specifier instance.
|
extern |
Canonical int type specifier instance.
|
extern |
Canonical long type specifier instance.
|
extern |
Canonical uint type specifier instance.
|
extern |
Canonical ulong type specifier instance.
|
extern |
Canonical void type specifier instance.