Bond 0.9
C++ Bond Runtime Library API Documentation
Loading...
Searching...
No Matches
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
 CBond::Value::[struct].mStringThe value as a string, which is not null terminated
 CBond::Function::[union].__unnamed0__
 CBond::Allocator::AlignedDeallocator< T >A custom unique_ptr deleter that deallocates aligned memory by calling Allocator::FreeAligned, rather than the delete operator. The memory is only freed; no object destruction is performed
 CBond::Allocator::AlignedObjectDeallocator< T >A custom unique_ptr deleter that destroys an aligned object by calling its destructor then freeing its memory by calling Allocator::FreeAligned rather than the delete operator
 CBond::AllocatorAbstract base class defining the interface through which all components of Bond perform memory and object allocations
  CBond::DefaultAllocatorA simple implementation of Allocator that allocates and frees memory using the new and delete operators and also tracks the number of outstanding allocations
 CBond::AutoStack< ValueType >A stack whose elements are automatic variables
 CBond::CboLoaderLoads CBO modules and resolves their native function bindings
 CBond::CboValidatorA validator for Bond CBO bytecode streams
 CBond::CharStreamAn iterator over the contents of a stream of text
 CBond::CodeGeneratorA code generator for the Bond scripting language
 CBond::CodeSegmentCollection of functions, static initializers and data loaded from CBO files
 CBond::CollectableBase class for objects tracked by a Collector
  CBond::WrapperCollectable< T >A Collectable wrapper for arbitrary content
 CBond::CollectorTracks and destroys Collectable objects
 CBond::CommandLineArgsProvides a program's command line arguments encoded in UTF-8
 CBond::CompilerErrorA container for error information reported by the various components of the Bond compiler
 CBond::CompilerErrorBufferA container for CompilerError instances generated by the various components of the Bond compiler
 CBond::ConstantTableThe constant tables of a single CBO, which are referenced by index from the bytecode of its functions
 CBond::AutoStack< ValueType >::ConstIteratorAn iterator that visits the values of a const AutoStack from the top to the bottom
 CBond::DataEntryA named global variable loaded from a CBO
 CBond::DataViewAn immutable object that encapsulates a pointer to a constant contiguous block of memory representing arbitrary binary data and a count of the number of bytes of data
 CBond::DataViewIndexAn immutable object that encapsulates an array of named constant DataView objects
 CBond::Allocator::Deallocator< T >A custom unique_ptr deleter that deallocates memory by calling Allocator::Free rather than the delete operator. The memory is only freed; no object destruction is performed
 CBond::DisassemblerA disassembler for CBO files
 CBond::AutoStack< ValueType >::ElementA single value on an AutoStack, owned by the scope that pushed it
 CBond::AutoStack< StackFrame >::Element
  CBond::InvocationStackFrameSets up and invokes a call to a Bond function from native code
 CBond::ExceptionException thrown for all types of errors in the Bond Runtime Library
 CBond::FrontEndA compiler front end for the Bond scripting language
 CBond::FunctionMetadata and executable code or native binding of a function loaded from a CBO
 CBond::InputStreamAdaptorA wrapper around an InputStream that adds formatted input operations used within the Bond Standard Library
 CBond::AutoStack< ValueType >::IteratorAn iterator that visits the values of an AutoStack from the top to the bottom
 CBond::LexerA lexer for the Bond scripting language
 CBond::NativeBindingCollectionA collection of NativeFunctionBindings, typically one per library, passed to CboLoader::AddNativeBinding
 CBond::NativeBindingGeneratorA generator for C++ native binding declarations and definitions
 CBond::NativeFunctionBindingBinds a native Bond function to its C++ implementation
 CBond::Allocator::ObjectDeallocator< T >A custom unique_ptr deleter that destroys an object by calling its destructor then freeing its memory by calling Allocator::Free rather than the delete operator
 CBond::OutputStreamAdaptorA wrapper around an OutputStream that adds formatted output operations used within the Bond Standard Library
 CBond::ParamListSignatureSignature metadata for a function's parameter list
 CBond::ParamSignatureSignature metadata for a single function parameter
 CBond::ParseNodeBase class for all parse tree nodes
  CBond::FunctionPrototypeRepresents a function signature
  CBond::ListParseNodeBase class for parse nodes that can be linked into singly linked lists
   CBond::DeclarativeStatementRepresents a declarative statement with one or more named initializers
   CBond::ExpressionBase class for expression nodes
    CBond::ArraySubscriptExpressionRepresents an array subscript expression
    CBond::BinaryExpressionRepresents a binary operator expression
    CBond::CastExpressionRepresents an explicit cast expression
    CBond::ConditionalExpressionRepresents a ternary conditional expression
    CBond::ConstantLiteralExpressionRepresents a literal constant expression
    CBond::EmptyExpressionRepresents an intentionally empty expression
    CBond::FunctionCallExpressionRepresents a function call expression
    CBond::IdentifierExpressionRepresents an identifier expression
    CBond::MemberExpressionRepresents member access on a struct-like value
    CBond::PostfixExpressionRepresents a postfix operator expression
    CBond::PropertyofExpressionRepresents sizeof/alignof style property queries
    CBond::ThisExpressionRepresents a this expression
    CBond::UnaryExpressionRepresents a unary operator expression
   CBond::ExpressionStatementRepresents a statement that evaluates an expression
   CBond::IfStatementRepresents an if/else statement
   CBond::IncludeDirectiveRepresents an include directive
   CBond::InitializerRepresents a scalar or aggregate initializer
   CBond::JumpStatementRepresents a break, continue, or return statement
   CBond::NativeBlockRepresents a native declaration block
   CBond::QualifiedIdentifierRepresents a potentially qualified identifier
   CBond::ResolvedSwitchLabelRepresents a resolved switch label used for code generation
   CBond::SwitchLabelRepresents a case or default label in a switch section
   CBond::SwitchStatementRepresents a switch statement
   CBond::SymbolBase class for named entities that participate in symbol lookup
    CBond::CompoundStatementRepresents a block statement and its local scope
    CBond::EnumDeclarationRepresents an enum declaration
    CBond::EnumeratorRepresents a single enum value
    CBond::ForStatementRepresents a for loop and its local scope
    CBond::FunctionDefinitionRepresents a function declaration or definition
    CBond::NamedInitializerRepresents a named variable initializer
    CBond::NamespaceDefinitionRepresents a namespace definition
    CBond::ParameterRepresents a function parameter
    CBond::StructDeclarationRepresents a struct declaration
    CBond::SwitchSectionRepresents one labeled section inside a switch statement
    CBond::UsingDeclarationRepresents a using-declaration that aliases a single symbol into local scope
   CBond::TranslationUnitRepresents a complete parsed source file
   CBond::UsingDirectiveRepresents a using-directive that opens a namespace's symbols into local scope
   CBond::WhileStatementRepresents a while or do-while loop
  CBond::TypeDescriptorDescribes a resolved or partially resolved Bond type
  CBond::TypeSpecifierRepresents a parsed type specifier
 CBond::ParseNodeCountA set of counters for Bond parse node types
 CBond::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
 CBond::ParseNodeVisitorAn abstract interface that implements the Visitor pattern over all concrete types that derive from ParseNode
  CBond::ParseNodeTraverserA concrete implementation of ParseNodeVisitor that, in addition to visiting a ParseNode, does a depth-first traversal of its children and visits them too
   CBond::ParseNodeCounterA parse tree traverser that counts encountered parse nodes
  CBond::ParseNodeVisitorAdapterA concrete implementation of ParseNodeVisitor with methods that do nothing
   CBond::CastVisitor< T >
 CBond::ParserA parser for the Bond scripting language
 CBond::ParseTreePrinterA printer for Bond parse trees
 CBond::PrettyPrinterA formatter for Bond parse trees
 CBond::QualifiedNameAn immutable wrapper around a constant array of C-style strings to represent the fully qualified name of a symbol in compiled Bond bytecode
 CBond::CboValidator::ResultSummary information produced during CBO validation
 CBond::ReturnSignatureSignature metadata for a function return value
 CBond::SemanticAnalyzerA semantic analyzer for a parse tree generated from the Bond scripting language
 CBond::StackFrameThe activation record of a function invoked by a VM
 CBond::StdioFileHandleA handle to a stdio FILE* to ensure that the file is properly disposed using RAII
 CBond::StreamA base interface for performing IO operations
  CBond::InputStreamAn abstract interface for performing both unformatted and formatted input operations
   CBond::MemoryInputStreamA concrete implementation of InputStream that performs input operations from an in-memory buffer
   CBond::StdioInputStreamA concrete implementation of InputStream that performs input operations from a stdio FILE*
    CBond::StdInInputStreamA concrete implementation of StdioInputStream bound to stdin
  CBond::OutputStreamAn abstract interface for performing both unformatted and formatted output operations
   CBond::MemoryOutputStreamA concrete implementation of OutputStream that performs output operations to an in-memory buffer
   CBond::StdioOutputStreamA concrete implementation of OutputStream that performs output operations to a stdio FILE*
    CBond::StdErrOutputStreamA concrete implementation of StdioOutputStream bound to stderr
    CBond::StdOutOutputStreamA concrete implementation of StdioOutputStream bound to stdout
 CBond::StreamFactoryAn abstract interface for creating file streams without being coupled to any particular concrete type of stream
  CBond::MemoryStreamFactoryA concrete implementation of StreamFactory that instantiates MemoryInputStreams for a fixed collection of DataViews
  CBond::StdioStreamFactoryA concrete implementation of StreamFactory that creates instances of StdioInputStream and StdioOutputStream
 CBond::StreamPosA POD struct to contain the index, line and column of a token in source code
 CBond::SymbolTableA hierarchical symbol table used by the Bond compiler
 CBond::TokenA token describing a syntactic unit of the Bond scripting language (e.g. keywords, identifiers, literal constants and operators)
 CBond::TokenCollectionAn ordered immutable collection of Tokens
 CBond::TokenStreamAn iterator over the contents of a TokenCollection
 CBond::TokenTypeSetRepresents a collection of related TokenTypes
 CBond::TypeAndValueContains the information regarding the type and value of an expression as it is evaluated by the compiler
 Cunique_ptr
  CBond::Allocator::AlignedHandle< const CodeSegment >
  CBond::Allocator::Handle< const TokenCollection >
  CBond::Allocator::Handle< char >
  CBond::Allocator::Handle< uint8_t >
  CBond::Allocator::ObjectHandle< ParseNode >
  CBond::Allocator::ObjectHandle< InputStream >
  CBond::Allocator::ObjectHandle< OutputStream >
  CBond::Allocator::ObjectHandle< Collectable >
  CBond::Allocator::AlignedHandle< T >An owning memory handle that derives from unique_ptr that deallocates memory using an AlignedDeallocator rather than std::default_delete when it goes out of scope
  CBond::Allocator::AlignedObjectHandle< T >An owning object handle that derives from unique_ptr that destroys an aligned object using an AlignedObjectDeallocator rather than std::default_delete when it goes out of scope
  CBond::Allocator::Handle< T >An owning memory handle that derives from unique_ptr that deallocates memory using a Deallocator rather than std::default_delete when it goes out of scope
  CBond::Allocator::ObjectHandle< T >An owning object handle that derives from unique_ptr that destroys an object using an ObjectDeallocator rather than std::default_delete when it goes out of scope
 CBond::Utf8ConsoleOutputMakes a Windows console display UTF-8 output for the lifetime of this object
 CBond::ValueUnion of all value types representable by a Token in the Bond compiler
 CBond::Value16Union of all 16 bit value types used within the Bond compiler, the CBO file format, and the Bond Virtual Machine
 CBond::Value32Union of all 32 bit value types used within the Bond compiler, the CBO file format, and the Bond Virtual Machine
 CBond::Value64Union of all 64 bit value types used within the Bond compiler, the CBO file format, and the Bond Virtual Machine
 CBond::VMA virtual machine that executes the Bond bytecode in a CodeSegment