Bond 0.9
C++ Bond Runtime Library API Documentation
Loading...
Searching...
No Matches
Bond Namespace Reference

Namespaces

namespace  IO
namespace  Private

Classes

class  Allocator
 Abstract base class defining the interface through which all components of Bond perform memory and object allocations. More...
class  ArraySubscriptExpression
 Represents an array subscript expression. More...
class  AutoStack
 A stack whose elements are automatic variables. More...
class  BinaryExpression
 Represents a binary operator expression. More...
class  CastExpression
 Represents an explicit cast expression. More...
class  CastVisitor
class  CboLoader
 Loads CBO modules and resolves their native function bindings. More...
class  CboValidator
 A validator for Bond CBO bytecode streams. More...
class  CharStream
 An iterator over the contents of a stream of text. More...
class  CodeGenerator
 A code generator for the Bond scripting language. More...
class  CodeSegment
 Collection of functions, static initializers and data loaded from CBO files. More...
class  Collectable
 Base class for objects tracked by a Collector. More...
class  Collector
 Tracks and destroys Collectable objects. More...
class  CommandLineArgs
 Provides a program's command line arguments encoded in UTF-8. More...
class  CompilerError
 A container for error information reported by the various components of the Bond compiler. More...
class  CompilerErrorBuffer
 A container for CompilerError instances generated by the various components of the Bond compiler. More...
class  CompoundStatement
 Represents a block statement and its local scope. More...
class  ConditionalExpression
 Represents a ternary conditional expression. More...
class  ConstantLiteralExpression
 Represents a literal constant expression. More...
struct  ConstantTable
 The constant tables of a single CBO, which are referenced by index from the bytecode of its functions. More...
struct  DataEntry
 A named global variable loaded from a CBO. More...
class  DataView
 An 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. More...
class  DataViewIndex
 An immutable object that encapsulates an array of named constant DataView objects. More...
class  DeclarativeStatement
 Represents a declarative statement with one or more named initializers. More...
class  DefaultAllocator
 A simple implementation of Allocator that allocates and frees memory using the new and delete operators and also tracks the number of outstanding allocations. More...
class  Disassembler
 A disassembler for CBO files. More...
class  EmptyExpression
 Represents an intentionally empty expression. More...
class  EnumDeclaration
 Represents an enum declaration. More...
class  Enumerator
 Represents a single enum value. More...
class  Exception
 Exception thrown for all types of errors in the Bond Runtime Library. More...
class  Expression
 Base class for expression nodes. More...
class  ExpressionStatement
 Represents a statement that evaluates an expression. More...
class  ForStatement
 Represents a for loop and its local scope. More...
class  FrontEnd
 A compiler front end for the Bond scripting language. More...
struct  Function
 Metadata and executable code or native binding of a function loaded from a CBO. More...
class  FunctionCallExpression
 Represents a function call expression. More...
class  FunctionDefinition
 Represents a function declaration or definition. More...
class  FunctionPrototype
 Represents a function signature. More...
class  IdentifierExpression
 Represents an identifier expression. More...
class  IfStatement
 Represents an if/else statement. More...
class  IncludeDirective
 Represents an include directive. More...
class  Initializer
 Represents a scalar or aggregate initializer. More...
class  InputStream
 An abstract interface for performing both unformatted and formatted input operations. More...
class  InputStreamAdaptor
 A wrapper around an InputStream that adds formatted input operations used within the Bond Standard Library. More...
class  InvocationStackFrame
 Sets up and invokes a call to a Bond function from native code. More...
class  JumpStatement
 Represents a break, continue, or return statement. More...
class  Lexer
 A lexer for the Bond scripting language. More...
class  ListParseNode
 Base class for parse nodes that can be linked into singly linked lists. More...
class  MemberExpression
 Represents member access on a struct-like value. More...
class  MemoryInputStream
 A concrete implementation of InputStream that performs input operations from an in-memory buffer. More...
class  MemoryOutputStream
 A concrete implementation of OutputStream that performs output operations to an in-memory buffer. More...
class  MemoryStreamFactory
 A concrete implementation of StreamFactory that instantiates MemoryInputStreams for a fixed collection of DataViews. More...
class  NamedInitializer
 Represents a named variable initializer. More...
class  NamespaceDefinition
 Represents a namespace definition. More...
struct  NativeBindingCollection
 A collection of NativeFunctionBindings, typically one per library, passed to CboLoader::AddNativeBinding. More...
class  NativeBindingGenerator
 A generator for C++ native binding declarations and definitions. More...
class  NativeBlock
 Represents a native declaration block. More...
struct  NativeFunctionBinding
 Binds a native Bond function to its C++ implementation. More...
class  OutputStream
 An abstract interface for performing both unformatted and formatted output operations. More...
class  OutputStreamAdaptor
 A wrapper around an OutputStream that adds formatted output operations used within the Bond Standard Library. More...
class  Parameter
 Represents a function parameter. More...
struct  ParamListSignature
 Signature metadata for a function's parameter list. More...
struct  ParamSignature
 Signature metadata for a single function parameter. More...
class  ParseNode
 Base class for all parse tree nodes. More...
struct  ParseNodeCount
 A set of counters for Bond parse node types. More...
class  ParseNodeCounter
 A parse tree traverser that counts encountered parse nodes. More...
class  ParseNodeList
 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  ParseNodeTraverser
 A concrete implementation of ParseNodeVisitor that, in addition to visiting a ParseNode, does a depth-first traversal of its children and visits them too. More...
class  ParseNodeVisitor
 An abstract interface that implements the Visitor pattern over all concrete types that derive from ParseNode. More...
class  ParseNodeVisitorAdapter
 A concrete implementation of ParseNodeVisitor with methods that do nothing. More...
class  Parser
 A parser for the Bond scripting language. More...
class  ParseTreePrinter
 A printer for Bond parse trees. More...
class  PostfixExpression
 Represents a postfix operator expression. More...
class  PrettyPrinter
 A formatter for Bond parse trees. More...
class  PropertyofExpression
 Represents sizeof/alignof style property queries. More...
class  QualifiedIdentifier
 Represents a potentially qualified identifier. More...
class  QualifiedName
 An immutable wrapper around a constant array of C-style strings to represent the fully qualified name of a symbol in compiled Bond bytecode. More...
class  ResolvedSwitchLabel
 Represents a resolved switch label used for code generation. More...
struct  ReturnSignature
 Signature metadata for a function return value. More...
class  SemanticAnalyzer
 A semantic analyzer for a parse tree generated from the Bond scripting language. More...
class  StackFrame
 The activation record of a function invoked by a VM. More...
class  StdErrOutputStream
 A concrete implementation of StdioOutputStream bound to stderr. More...
class  StdInInputStream
 A concrete implementation of StdioInputStream bound to stdin. More...
class  StdioFileHandle
 A handle to a stdio FILE* to ensure that the file is properly disposed using RAII. More...
class  StdioInputStream
 A concrete implementation of InputStream that performs input operations from a stdio FILE*. More...
class  StdioOutputStream
 A concrete implementation of OutputStream that performs output operations to a stdio FILE*. More...
class  StdioStreamFactory
 A concrete implementation of StreamFactory that creates instances of StdioInputStream and StdioOutputStream. More...
class  StdOutOutputStream
 A concrete implementation of StdioOutputStream bound to stdout. More...
class  Stream
 A base interface for performing IO operations. More...
class  StreamFactory
 An abstract interface for creating file streams without being coupled to any particular concrete type of stream. More...
struct  StreamPos
 A POD struct to contain the index, line and column of a token in source code. More...
class  StructDeclaration
 Represents a struct declaration. More...
class  SwitchLabel
 Represents a case or default label in a switch section. More...
class  SwitchSection
 Represents one labeled section inside a switch statement. More...
class  SwitchStatement
 Represents a switch statement. More...
class  Symbol
 Base class for named entities that participate in symbol lookup. More...
class  SymbolTable
 A hierarchical symbol table used by the Bond compiler. More...
class  ThisExpression
 Represents a this expression. More...
class  Token
 A token describing a syntactic unit of the Bond scripting language (e.g. keywords, identifiers, literal constants and operators). More...
class  TokenCollection
 An ordered immutable collection of Tokens. More...
class  TokenStream
 An iterator over the contents of a TokenCollection. More...
class  TokenTypeSet
 Represents a collection of related TokenTypes. More...
class  TranslationUnit
 Represents a complete parsed source file. More...
class  TypeAndValue
 Contains the information regarding the type and value of an expression as it is evaluated by the compiler. More...
class  TypeDescriptor
 Describes a resolved or partially resolved Bond type. More...
class  TypeSpecifier
 Represents a parsed type specifier. More...
class  UnaryExpression
 Represents a unary operator expression. More...
class  UsingDeclaration
 Represents a using-declaration that aliases a single symbol into local scope. More...
class  UsingDirective
 Represents a using-directive that opens a namespace's symbols into local scope. More...
class  Utf8ConsoleOutput
 Makes a Windows console display UTF-8 output for the lifetime of this object. More...
union  Value
 Union of all value types representable by a Token in the Bond compiler. More...
union  Value16
 Union of all 16 bit value types used within the Bond compiler, the CBO file format, and the Bond Virtual Machine. More...
union  Value32
 Union of all 32 bit value types used within the Bond compiler, the CBO file format, and the Bond Virtual Machine. More...
union  Value64
 Union of all 64 bit value types used within the Bond compiler, the CBO file format, and the Bond Virtual Machine. More...
class  VM
 A virtual machine that executes the Bond bytecode in a CodeSegment. More...
class  WhileStatement
 Represents a while or do-while loop. More...
class  WrapperCollectable
 A Collectable wrapper for arbitrary content. More...

Typedefs

typedef void(*) NativeFunction(StackFrame &frame)
 A C++ function that implements a function declared native in Bond.
typedef Allocator::Handle< const TokenCollection > TokenCollectionHandle
 An owning pointer to a dynamically allocated TokenCollection.
typedef Vector< TokenCollectionHandle > TokenCollectionStore
 A collection of dynamically allocated TokenCollection.
typedef Allocator::ObjectHandle< ParseNode > ParseNodeHandle
 An owning pointer to a dynamically allocated ParseNode.
typedef Vector< ParseNodeHandle > ParseNodeStore
 A collection of dynamically allocated ParseNodes.
typedef Allocator::ObjectHandle< InputStream > InputStreamHandle
 An owning pointer to a dynamically allocated InputStream.
typedef Allocator::ObjectHandle< OutputStream > OutputStreamHandle
 An owning pointer to a dynamically allocated OutputStream.
typedef AutoStack< bool > BoolStack
 An AutoStack of bool values.
typedef AutoStack< int32_t > IntStack
 An AutoStack of int32_t values.
typedef AutoStack< uint32_t > UIntStack
 An AutoStack of uint32_t values.
typedef AutoStack< size_t > SizeStack
 An AutoStack of size_t values.
typedef Allocator::AlignedHandle< const CodeSegment > CodeSegmentHandle
 An owning pointer to a dynamically allocated CodeSegment.
typedef Allocator::ObjectHandle< Collectable > CollectableHandle
 An owning pointer to a dynamically allocated Collectable.
typedef AutoStack< StackFrame > StackFrames
 The call stack of a VM.

Enumerations

enum  Scope { SCOPE_GLOBAL , SCOPE_LOCAL , SCOPE_STRUCT_MEMBER }
 Describes where a symbol is declared. More...
enum  OpCode {
  OPCODE_NOP , OPCODE_CONSTC , OPCODE_CONSTUC , OPCODE_CONSTS ,
  OPCODE_CONSTUS , OPCODE_CONST32 , OPCODE_CONST64 , OPCODE_CONSTI_N2 ,
  OPCODE_CONSTI_N1 , OPCODE_CONSTI_0 , OPCODE_CONSTI_1 , OPCODE_CONSTI_2 ,
  OPCODE_CONSTI_3 , OPCODE_CONSTI_4 , OPCODE_CONSTI_8 , OPCODE_CONSTL_N2 ,
  OPCODE_CONSTL_N1 , OPCODE_CONSTL_0 , OPCODE_CONSTL_1 , OPCODE_CONSTL_2 ,
  OPCODE_CONSTL_3 , OPCODE_CONSTL_4 , OPCODE_CONSTL_8 , OPCODE_CONSTF_N2 ,
  OPCODE_CONSTF_N1 , OPCODE_CONSTF_NH , OPCODE_CONSTF_0 , OPCODE_CONSTF_H ,
  OPCODE_CONSTF_1 , OPCODE_CONSTF_2 , OPCODE_CONSTD_N2 , OPCODE_CONSTD_N1 ,
  OPCODE_CONSTD_NH , OPCODE_CONSTD_0 , OPCODE_CONSTD_H , OPCODE_CONSTD_1 ,
  OPCODE_CONSTD_2 , OPCODE_LOADFP , OPCODE_LOADFPW , OPCODE_LOADEA ,
  OPCODE_LOADSTR , OPCODE_LOADC , OPCODE_LOADUC , OPCODE_LOADS ,
  OPCODE_LOADUS , OPCODE_LOAD32 , OPCODE_LOAD64 , OPCODE_LOADMEMW ,
  OPCODE_STOREC , OPCODE_STORES , OPCODE_STORE32 , OPCODE_STORE64 ,
  OPCODE_PUSHC , OPCODE_PUSHCW , OPCODE_PUSHUC , OPCODE_PUSHUCW ,
  OPCODE_PUSHS , OPCODE_PUSHSW , OPCODE_PUSHUS , OPCODE_PUSHUSW ,
  OPCODE_PUSH32 , OPCODE_PUSH32W , OPCODE_PUSH32_P0 , OPCODE_PUSH32_P1 ,
  OPCODE_PUSH32_P2 , OPCODE_PUSH32_P3 , OPCODE_PUSH32_L0 , OPCODE_PUSH32_L1 ,
  OPCODE_PUSH32_L2 , OPCODE_PUSH32_L3 , OPCODE_PUSH64 , OPCODE_PUSH64W ,
  OPCODE_PUSH64_P0 , OPCODE_PUSH64_P1 , OPCODE_PUSH64_P2 , OPCODE_PUSH64_P3 ,
  OPCODE_PUSH64_L0 , OPCODE_PUSH64_L1 , OPCODE_PUSH64_L2 , OPCODE_PUSH64_L3 ,
  OPCODE_POP , OPCODE_POPC , OPCODE_POPCW , OPCODE_POPS ,
  OPCODE_POPSW , OPCODE_POP32 , OPCODE_POP32W , OPCODE_POP32_P0 ,
  OPCODE_POP32_P1 , OPCODE_POP32_P2 , OPCODE_POP32_P3 , OPCODE_POP32_L0 ,
  OPCODE_POP32_L1 , OPCODE_POP32_L2 , OPCODE_POP32_L3 , OPCODE_POP64 ,
  OPCODE_POP64W , OPCODE_POP64_P0 , OPCODE_POP64_P1 , OPCODE_POP64_P2 ,
  OPCODE_POP64_P3 , OPCODE_POP64_L0 , OPCODE_POP64_L1 , OPCODE_POP64_L2 ,
  OPCODE_POP64_L3 , OPCODE_MEMCOPYW , OPCODE_MEMZEROW , OPCODE_DUP ,
  OPCODE_DUPINS , OPCODE_SWAP , OPCODE_ITOC , OPCODE_UITOUC ,
  OPCODE_ITOS , OPCODE_UITOUS , OPCODE_ITOL , OPCODE_UITOUL ,
  OPCODE_ITOF , OPCODE_UITOF , OPCODE_ITOD , OPCODE_UITOD ,
  OPCODE_LTOI , OPCODE_LTOF , OPCODE_ULTOF , OPCODE_LTOD ,
  OPCODE_ULTOD , OPCODE_FTOI , OPCODE_FTOUI , OPCODE_FTOL ,
  OPCODE_FTOUL , OPCODE_FTOD , OPCODE_DTOI , OPCODE_DTOUI ,
  OPCODE_DTOL , OPCODE_DTOUL , OPCODE_DTOF , OPCODE_PTROFFI ,
  OPCODE_PTROFFL , OPCODE_PTRDIFF , OPCODE_INCI , OPCODE_INCL ,
  OPCODE_ADDI , OPCODE_ADDL , OPCODE_ADDF , OPCODE_ADDD ,
  OPCODE_SUBI , OPCODE_SUBL , OPCODE_SUBF , OPCODE_SUBD ,
  OPCODE_MULI , OPCODE_MULL , OPCODE_MULF , OPCODE_MULD ,
  OPCODE_DIVI , OPCODE_DIVUI , OPCODE_DIVL , OPCODE_DIVUL ,
  OPCODE_DIVF , OPCODE_DIVD , OPCODE_REMI , OPCODE_REMUI ,
  OPCODE_REML , OPCODE_REMUL , OPCODE_LSHI , OPCODE_LSHL ,
  OPCODE_RSHI , OPCODE_RSHUI , OPCODE_RSHL , OPCODE_RSHUL ,
  OPCODE_ANDI , OPCODE_ANDL , OPCODE_ORI , OPCODE_ORL ,
  OPCODE_XORI , OPCODE_XORL , OPCODE_NEGI , OPCODE_NEGL ,
  OPCODE_NEGF , OPCODE_NEGD , OPCODE_NOT , OPCODE_CMPEQI ,
  OPCODE_CMPEQL , OPCODE_CMPEQF , OPCODE_CMPEQD , OPCODE_CMPNEQI ,
  OPCODE_CMPNEQL , OPCODE_CMPNEQF , OPCODE_CMPNEQD , OPCODE_CMPLTI ,
  OPCODE_CMPLTUI , OPCODE_CMPLTL , OPCODE_CMPLTUL , OPCODE_CMPLTF ,
  OPCODE_CMPLTD , OPCODE_CMPLEI , OPCODE_CMPLEUI , OPCODE_CMPLEL ,
  OPCODE_CMPLEUL , OPCODE_CMPLEF , OPCODE_CMPLED , OPCODE_CMPGTI ,
  OPCODE_CMPGTUI , OPCODE_CMPGTL , OPCODE_CMPGTUL , OPCODE_CMPGTF ,
  OPCODE_CMPGTD , OPCODE_CMPGEI , OPCODE_CMPGEUI , OPCODE_CMPGEL ,
  OPCODE_CMPGEUL , OPCODE_CMPGEF , OPCODE_CMPGED , OPCODE_BRZ ,
  OPCODE_BRZW , OPCODE_BRNZ , OPCODE_BRNZW , OPCODE_NBRZ ,
  OPCODE_NBRZW , OPCODE_NBRNZ , OPCODE_NBRNZW , OPCODE_IFZ ,
  OPCODE_IFZW , OPCODE_IFNZ , OPCODE_IFNZW , OPCODE_GOTO ,
  OPCODE_GOTOW , OPCODE_LOOKUPSWITCH , OPCODE_TABLESWITCH , OPCODE_INVOKE ,
  OPCODE_INVOKEUNPACK , OPCODE_RETURN , OPCODE_RETURN32 , OPCODE_RETURN64 ,
  OPCODE_RETURNMEMW , OPCODE_MAX
}
 Enumeration of all opcodes in the Bond Virtual Machine instruction set. More...
enum  OpCodeParam {
  OC_PARAM_NONE , OC_PARAM_CHAR , OC_PARAM_UCHAR , OC_PARAM_CHAR_CHAR ,
  OC_PARAM_SHORT , OC_PARAM_USHORT , OC_PARAM_INT , OC_PARAM_VAL32 ,
  OC_PARAM_VAL64 , OC_PARAM_OFF16 , OC_PARAM_OFF32 , OC_PARAM_STRING ,
  OC_PARAM_NAME , OC_PARAM_LOOKUPSWITCH , OC_PARAM_TABLESWITCH
}
 Enumeration describing all combinations of parameter types for the instructions in the Bond Virtual Machine instruction set. More...
enum  PointerSize { POINTER_32BIT , POINTER_64BIT }
 The size of pointers on a target platform. More...
enum  SignatureType {
  SIG_VOID , SIG_BOOL , SIG_CHAR , SIG_UCHAR ,
  SIG_SHORT , SIG_USHORT , SIG_INT , SIG_UINT ,
  SIG_LONG , SIG_ULONG , SIG_FLOAT , SIG_DOUBLE ,
  SIG_POINTER , SIG_AGGREGATE
}
 Enumeration of the types of function parameters and return values in CBO files. More...

Functions

BOND_API void InputStream__Close (Bond::StackFrame &frame)
BOND_API void InputStream__ScanStr (Bond::StackFrame &frame)
BOND_API void InputStream__ScanB (Bond::StackFrame &frame)
BOND_API void InputStream__ScanC (Bond::StackFrame &frame)
BOND_API void InputStream__ScanI (Bond::StackFrame &frame)
BOND_API void InputStream__ScanUI (Bond::StackFrame &frame)
BOND_API void InputStream__ScanL (Bond::StackFrame &frame)
BOND_API void InputStream__ScanUL (Bond::StackFrame &frame)
BOND_API void InputStream__ScanF (Bond::StackFrame &frame)
BOND_API void InputStream__ScanD (Bond::StackFrame &frame)
BOND_API void InputStream__Get (Bond::StackFrame &frame)
BOND_API void InputStream__Read (Bond::StackFrame &frame)
BOND_API void InputStream__GetFlags (Bond::StackFrame &frame)
BOND_API void InputStream__SetFlags (Bond::StackFrame &frame)
BOND_API void InputStream__UnsetFlags (Bond::StackFrame &frame)
BOND_API void InputStream__ClearFlags (Bond::StackFrame &frame)
BOND_API void InputStream__GetPosition (Bond::StackFrame &frame)
BOND_API void InputStream__GetEndPosition (Bond::StackFrame &frame)
BOND_API void InputStream__SetPosition (Bond::StackFrame &frame)
BOND_API void InputStream__SetPositionFromEnd (Bond::StackFrame &frame)
BOND_API void InputStream__AddOffset (Bond::StackFrame &frame)
BOND_API void InputStream__IsEof (Bond::StackFrame &frame)
BOND_API void InputStream__HasError (Bond::StackFrame &frame)
BOND_API void InputStream__ClearError (Bond::StackFrame &frame)
BOND_API void OutputStream__Close (Bond::StackFrame &frame)
BOND_API void OutputStream__Flush (Bond::StackFrame &frame)
BOND_API void OutputStream__PrintStr (Bond::StackFrame &frame)
BOND_API void OutputStream__PrintB (Bond::StackFrame &frame)
BOND_API void OutputStream__PrintC (Bond::StackFrame &frame)
BOND_API void OutputStream__PrintI (Bond::StackFrame &frame)
BOND_API void OutputStream__PrintUI (Bond::StackFrame &frame)
BOND_API void OutputStream__PrintL (Bond::StackFrame &frame)
BOND_API void OutputStream__PrintUL (Bond::StackFrame &frame)
BOND_API void OutputStream__PrintF (Bond::StackFrame &frame)
BOND_API void OutputStream__PrintD (Bond::StackFrame &frame)
BOND_API void OutputStream__Put (Bond::StackFrame &frame)
BOND_API void OutputStream__Write (Bond::StackFrame &frame)
BOND_API void OutputStream__GetFlags (Bond::StackFrame &frame)
BOND_API void OutputStream__SetFlags (Bond::StackFrame &frame)
BOND_API void OutputStream__UnsetFlags (Bond::StackFrame &frame)
BOND_API void OutputStream__ClearFlags (Bond::StackFrame &frame)
BOND_API void OutputStream__GetPrecision (Bond::StackFrame &frame)
BOND_API void OutputStream__SetPrecision (Bond::StackFrame &frame)
BOND_API void OutputStream__GetWidth (Bond::StackFrame &frame)
BOND_API void OutputStream__SetWidth (Bond::StackFrame &frame)
BOND_API void OutputStream__GetPosition (Bond::StackFrame &frame)
BOND_API void OutputStream__GetEndPosition (Bond::StackFrame &frame)
BOND_API void OutputStream__SetPosition (Bond::StackFrame &frame)
BOND_API void OutputStream__SetPositionFromEnd (Bond::StackFrame &frame)
BOND_API void OutputStream__AddOffset (Bond::StackFrame &frame)
BOND_API void OutputStream__IsEof (Bond::StackFrame &frame)
BOND_API void OutputStream__HasError (Bond::StackFrame &frame)
BOND_API void OutputStream__ClearError (Bond::StackFrame &frame)
BOND_API void StdIn (Bond::StackFrame &frame)
BOND_API void StdOut (Bond::StackFrame &frame)
BOND_API void StdErr (Bond::StackFrame &frame)
BOND_API void CreateInputStream (Bond::StackFrame &frame)
BOND_API void CreateInputStreamCollected (Bond::StackFrame &frame)
BOND_API void CreateInputStreamWithCollector (Bond::StackFrame &frame)
BOND_API void FreeInputStream (Bond::StackFrame &frame)
BOND_API void CreateOutputStream (Bond::StackFrame &frame)
BOND_API void CreateOutputStreamCollected (Bond::StackFrame &frame)
BOND_API void CreateOutputStreamWithCollector (Bond::StackFrame &frame)
BOND_API void FreeOutputStream (Bond::StackFrame &frame)
BOND_API void SinD (Bond::StackFrame &frame)
BOND_API void SinF (Bond::StackFrame &frame)
BOND_API void CosD (Bond::StackFrame &frame)
BOND_API void CosF (Bond::StackFrame &frame)
BOND_API void TanD (Bond::StackFrame &frame)
BOND_API void TanF (Bond::StackFrame &frame)
BOND_API void AsinD (Bond::StackFrame &frame)
BOND_API void AsinF (Bond::StackFrame &frame)
BOND_API void AcosD (Bond::StackFrame &frame)
BOND_API void AcosF (Bond::StackFrame &frame)
BOND_API void AtanD (Bond::StackFrame &frame)
BOND_API void AtanF (Bond::StackFrame &frame)
BOND_API void Atan2D (Bond::StackFrame &frame)
BOND_API void Atan2F (Bond::StackFrame &frame)
BOND_API void SinhD (Bond::StackFrame &frame)
BOND_API void SinhF (Bond::StackFrame &frame)
BOND_API void CoshD (Bond::StackFrame &frame)
BOND_API void CoshF (Bond::StackFrame &frame)
BOND_API void TanhD (Bond::StackFrame &frame)
BOND_API void TanhF (Bond::StackFrame &frame)
BOND_API void AsinhD (Bond::StackFrame &frame)
BOND_API void AsinhF (Bond::StackFrame &frame)
BOND_API void AcoshD (Bond::StackFrame &frame)
BOND_API void AcoshF (Bond::StackFrame &frame)
BOND_API void AtanhD (Bond::StackFrame &frame)
BOND_API void AtanhF (Bond::StackFrame &frame)
BOND_API void ExpD (Bond::StackFrame &frame)
BOND_API void ExpF (Bond::StackFrame &frame)
BOND_API void Exp2D (Bond::StackFrame &frame)
BOND_API void Exp2F (Bond::StackFrame &frame)
BOND_API void LogD (Bond::StackFrame &frame)
BOND_API void LogF (Bond::StackFrame &frame)
BOND_API void Log2D (Bond::StackFrame &frame)
BOND_API void Log2F (Bond::StackFrame &frame)
BOND_API void Log10D (Bond::StackFrame &frame)
BOND_API void Log10F (Bond::StackFrame &frame)
BOND_API void PowD (Bond::StackFrame &frame)
BOND_API void PowF (Bond::StackFrame &frame)
BOND_API void SqrtD (Bond::StackFrame &frame)
BOND_API void SqrtF (Bond::StackFrame &frame)
BOND_API void CbrtD (Bond::StackFrame &frame)
BOND_API void CbrtF (Bond::StackFrame &frame)
BOND_API void HypotD (Bond::StackFrame &frame)
BOND_API void HypotF (Bond::StackFrame &frame)
BOND_API void CeilD (Bond::StackFrame &frame)
BOND_API void CeilF (Bond::StackFrame &frame)
BOND_API void FloorD (Bond::StackFrame &frame)
BOND_API void FloorF (Bond::StackFrame &frame)
BOND_API void TruncD (Bond::StackFrame &frame)
BOND_API void TruncF (Bond::StackFrame &frame)
BOND_API void AbsC (Bond::StackFrame &frame)
BOND_API void AbsS (Bond::StackFrame &frame)
BOND_API void AbsI (Bond::StackFrame &frame)
BOND_API void AbsL (Bond::StackFrame &frame)
BOND_API void AbsD (Bond::StackFrame &frame)
BOND_API void AbsF (Bond::StackFrame &frame)
BOND_API void LdexpD (Bond::StackFrame &frame)
BOND_API void LdexpF (Bond::StackFrame &frame)
BOND_API void FrexpD (Bond::StackFrame &frame)
BOND_API void FrexpF (Bond::StackFrame &frame)
BOND_API void ModfD (Bond::StackFrame &frame)
BOND_API void ModfF (Bond::StackFrame &frame)
BOND_API void FmodD (Bond::StackFrame &frame)
BOND_API void FmodF (Bond::StackFrame &frame)
BOND_API void CopySignD (Bond::StackFrame &frame)
BOND_API void CopySignF (Bond::StackFrame &frame)
BOND_API void NaND (Bond::StackFrame &frame)
BOND_API void NaNF (Bond::StackFrame &frame)
BOND_API void IsNaND (Bond::StackFrame &frame)
BOND_API void IsNaNF (Bond::StackFrame &frame)
BOND_API void IsInfD (Bond::StackFrame &frame)
BOND_API void IsInfF (Bond::StackFrame &frame)
BOND_API void IsFiniteD (Bond::StackFrame &frame)
BOND_API void IsFiniteF (Bond::StackFrame &frame)
BOND_API void SignBitD (Bond::StackFrame &frame)
BOND_API void SignBitF (Bond::StackFrame &frame)
BOND_API void RoundD (Bond::StackFrame &frame)
BOND_API void RoundF (Bond::StackFrame &frame)
BOND_API void RintD (Bond::StackFrame &frame)
BOND_API void RintF (Bond::StackFrame &frame)
BOND_API void NearbyintD (Bond::StackFrame &frame)
BOND_API void NearbyintF (Bond::StackFrame &frame)
BOND_API void RemainderD (Bond::StackFrame &frame)
BOND_API void RemainderF (Bond::StackFrame &frame)
BOND_API void LroundD (Bond::StackFrame &frame)
BOND_API void LroundF (Bond::StackFrame &frame)
BOND_API void Log1pD (Bond::StackFrame &frame)
BOND_API void Log1pF (Bond::StackFrame &frame)
BOND_API void Expm1D (Bond::StackFrame &frame)
BOND_API void Expm1F (Bond::StackFrame &frame)
BOND_API void ErfD (Bond::StackFrame &frame)
BOND_API void ErfF (Bond::StackFrame &frame)
BOND_API void ErfcD (Bond::StackFrame &frame)
BOND_API void ErfcF (Bond::StackFrame &frame)
BOND_API void TgammaD (Bond::StackFrame &frame)
BOND_API void TgammaF (Bond::StackFrame &frame)
BOND_API void LgammaD (Bond::StackFrame &frame)
BOND_API void LgammaF (Bond::StackFrame &frame)
BOND_API void FmaD (Bond::StackFrame &frame)
BOND_API void FmaF (Bond::StackFrame &frame)
BOND_API void NextafterD (Bond::StackFrame &frame)
BOND_API void NextafterF (Bond::StackFrame &frame)
BOND_API void ScalbnD (Bond::StackFrame &frame)
BOND_API void ScalbnF (Bond::StackFrame &frame)
BOND_API void IlogbD (Bond::StackFrame &frame)
BOND_API void IlogbF (Bond::StackFrame &frame)
BOND_API void LogbD (Bond::StackFrame &frame)
BOND_API void LogbF (Bond::StackFrame &frame)
BOND_API void RemquoD (Bond::StackFrame &frame)
BOND_API void RemquoF (Bond::StackFrame &frame)
BOND_API void InfD (Bond::StackFrame &frame)
BOND_API void InfF (Bond::StackFrame &frame)
BOND_API void MinC (Bond::StackFrame &frame)
BOND_API void MinUC (Bond::StackFrame &frame)
BOND_API void MinS (Bond::StackFrame &frame)
BOND_API void MinUS (Bond::StackFrame &frame)
BOND_API void MinI (Bond::StackFrame &frame)
BOND_API void MinUI (Bond::StackFrame &frame)
BOND_API void MinL (Bond::StackFrame &frame)
BOND_API void MinUL (Bond::StackFrame &frame)
BOND_API void MinD (Bond::StackFrame &frame)
BOND_API void MinF (Bond::StackFrame &frame)
BOND_API void MaxC (Bond::StackFrame &frame)
BOND_API void MaxUC (Bond::StackFrame &frame)
BOND_API void MaxS (Bond::StackFrame &frame)
BOND_API void MaxUS (Bond::StackFrame &frame)
BOND_API void MaxI (Bond::StackFrame &frame)
BOND_API void MaxUI (Bond::StackFrame &frame)
BOND_API void MaxL (Bond::StackFrame &frame)
BOND_API void MaxUL (Bond::StackFrame &frame)
BOND_API void MaxD (Bond::StackFrame &frame)
BOND_API void MaxF (Bond::StackFrame &frame)
BOND_API void ClampC (Bond::StackFrame &frame)
BOND_API void ClampUC (Bond::StackFrame &frame)
BOND_API void ClampS (Bond::StackFrame &frame)
BOND_API void ClampUS (Bond::StackFrame &frame)
BOND_API void ClampI (Bond::StackFrame &frame)
BOND_API void ClampUI (Bond::StackFrame &frame)
BOND_API void ClampL (Bond::StackFrame &frame)
BOND_API void ClampUL (Bond::StackFrame &frame)
BOND_API void ClampD (Bond::StackFrame &frame)
BOND_API void ClampF (Bond::StackFrame &frame)
BOND_API void GetCollector (Bond::StackFrame &frame)
BOND_API void Allocate (Bond::StackFrame &frame)
BOND_API void AllocateCollected (Bond::StackFrame &frame)
BOND_API void AllocateWithCollector (Bond::StackFrame &frame)
BOND_API void AllocateAligned (Bond::StackFrame &frame)
BOND_API void AllocateAlignedCollected (Bond::StackFrame &frame)
BOND_API void AllocateAlignedWithCollector (Bond::StackFrame &frame)
BOND_API void Free (Bond::StackFrame &frame)
BOND_API void FreeAligned (Bond::StackFrame &frame)
BOND_API void Memcpy (Bond::StackFrame &frame)
BOND_API void LoadAllLibs (CboLoader &cboLoader)
 Adds all libraries of the Bond Standard Library to the given CboLoader.
BOND_API void LoadLibIo (CboLoader &cboLoader)
 Adds the compiled code and native bindings of the io library to the given CboLoader.
BOND_API void LoadLibMath (CboLoader &cboLoader)
 Adds the compiled code and native bindings of the math library to the given CboLoader.
BOND_API void LoadLibMemory (CboLoader &cboLoader)
 Adds the compiled code and native bindings of the memory library to the given CboLoader.
BOND_API void LoadLibString (CboLoader &cboLoader)
 Adds the compiled code and native bindings of the string library to the given CboLoader.
BOND_API void LoadLibType (CboLoader &cboLoader)
 Adds the compiled code and native bindings of the type library to the given CboLoader.
BOND_API void Strlen (Bond::StackFrame &frame)
BOND_API void Strcmp (Bond::StackFrame &frame)
BOND_API void Utf8Length (Bond::StackFrame &frame)
BOND_API void Utf8IsValid (Bond::StackFrame &frame)
BOND_API void Utf8Decode (Bond::StackFrame &frame)
BOND_API void Utf8Encode (Bond::StackFrame &frame)
BOND_API void TryParseInt (Bond::StackFrame &frame)
BOND_API void TryParseLong (Bond::StackFrame &frame)
BOND_API void TryParseFloat (Bond::StackFrame &frame)
BOND_API void TryParseDouble (Bond::StackFrame &frame)
BOND_API void IsAlnum (Bond::StackFrame &frame)
BOND_API void IsAlpha (Bond::StackFrame &frame)
BOND_API void IsBlank (Bond::StackFrame &frame)
BOND_API void IsCntrl (Bond::StackFrame &frame)
BOND_API void IsDigit (Bond::StackFrame &frame)
BOND_API void IsGraph (Bond::StackFrame &frame)
BOND_API void IsLower (Bond::StackFrame &frame)
BOND_API void IsPrint (Bond::StackFrame &frame)
BOND_API void IsPunct (Bond::StackFrame &frame)
BOND_API void IsSpace (Bond::StackFrame &frame)
BOND_API void IsUpper (Bond::StackFrame &frame)
BOND_API void IsXDigit (Bond::StackFrame &frame)
BOND_API void ToLower (Bond::StackFrame &frame)
BOND_API void ToUpper (Bond::StackFrame &frame)
BOND_API uint32_t GetLength (const ListParseNode *list)
 Counts and returns the length of a list of ListParseNodes.
template<typename NodeType>
NodeType * NextNode (NodeType *list)
 Returns the node that follows the given one in a list of ListParseNodes, cast to the same type, or null if it is the last node.
template<typename T>
T * CastNode (ParseNode *node)
 Returns the given ParseNode cast to the concrete type T, or null if its concrete type is not exactly T. The type is determined with a visitor rather than RTTI.
template<typename T>
const T * CastNode (const ParseNode *node)
 Returns the given ParseNode cast to the concrete type T, or null if its concrete type is not exactly T. The type is determined with a visitor rather than RTTI.
template<typename NodeType, typename Comparator>
NodeType * InsertNode (NodeType *head, NodeType *node, Comparator compare)
 Inserts a node into a sorted list of ListParseNodes, after any nodes that compare equal to it.
BOND_API bool AreComparableTypes (const TypeDescriptor &typeA, const TypeDescriptor &typeB)
 Returns whether values of the given types can be compared, i.e. whether both are pointers, both are numeric or both are bool.
BOND_API bool AreConvertibleTypes (const TypeDescriptor &fromType, const TypeDescriptor &toType)
 Returns whether a value of one type can be converted to another, i.e. whether the types are comparable or are the same struct or enum type.
BOND_API bool AreSameTypes (const TypeDescriptor &fromType, const TypeDescriptor &toType)
 Returns whether two types are the same, recursing through pointers and arrays, where array lengths must also match. The comparison is not symmetric with respect to const: it fails if fromType is const and toType is not, at any level of indirection, but succeeds if only toType is const.
BOND_API bool AreAssignableTypes (const TypeDescriptor &fromType, const TypeDescriptor &toType)
 Returns whether a value of one type can be assigned to an object of another type.
BOND_API bool IsLossyConversion (const TypeAndValue &fromTav, const TypeDescriptor &toType)
 Returns whether converting a numeric value to the given numeric type may lose data.
BOND_API TypeDescriptor PromoteType (const TypeDescriptor &type)
 Returns the type of an operand after C's integer promotions.
BOND_API TypeDescriptor CombineOperandTypes (const TypeDescriptor &typeA, const TypeDescriptor &typeB)
 Returns the type in which a binary operation on operands of the given types is performed, following C's usual arithmetic conversions.
BOND_API bool MayConvertNegativeToUnsigned (const TypeAndValue &operandTav, const TypeDescriptor &operationType)
 Returns true if the operand has a signed integer type, the operation in which it is used has an unsigned integer type and the operand is not a constant known to be non-negative.
BOND_API Value CastValue (const Token &fromValue, Token::TokenType toType)
 Converts the value of a constant literal Token to the given primitive type, as a C cast would.
BOND_API Value CastValue (const TypeAndValue &fromTav, const TypeDescriptor &toType)
 Converts a compile-time constant value to the given primitive type, as a C cast would.
BOND_API bool IsNegativeIntegerConstant (const Token &token)
 Returns whether the given Token is a signed integer constant literal whose value is negative.
BOND_API bool IsAbsolutePath (const StringView &path)
 Returns whether a path is absolute, that is whether it starts with a '/' or '\' separator, or with a drive letter prefix such as "C:".
BOND_API StringView GetDirectory (const StringView &path)
 Returns the directory part of a path, up to and including its last '/' or '\' separator, or an empty StringView if the path has no separator.
BOND_API void NormalizePath (const StringView &directory, const StringView &path, Vector< char > &result)
 Lexically normalizes the path formed by joining a directory and a path.
BOND_API void PrintTo (const StringView &str, OutputStream &stream)
 Writes the characters of a StringView to the provided output stream.
template<typename T>
T AlignDown (T value, T align)
 Rounds an integer down to the nearest multiple of a specified power of two.
template<typename T>
T AlignUp (T value, T align)
 Rounds an integer up to the nearest multiple of a specified power of two.
template<typename T>
T AlignUpDelta (T value, T align)
 Returns the difference between an integer and the nearest larger multiple of a specified power of two.
template<typename T>
T * AlignPointerDown (T *ptr, size_t align)
 Rounds a pointer down to the nearest multiple of a specified power of two.
template<typename T>
T * AlignPointerUp (T *ptr, size_t align)
 Rounds a pointer up to the nearest multiple of a specified power of two.
template<typename T>
bool IsPowerOfTwo (T value)
 Returns whether an integer is a power of two. 0 is not a power of two.
template<typename T>
T RoundUpToPowerOfTwo32 (T value)
 Rounds a 32 bit integer up to the nearest power of two. Values that are already powers of two are returned unchanged and 0 is returned as 0. The result is only correct for values no greater than 2^31.
template<typename T>
T Abs (T value)
 Returns the absolute value of a number.
template<typename RangeType, typename ValueType>
bool IsInRange (ValueType value)
 Returns whether value is exactly representable by RangeType, i.e. whether converting it to RangeType and back is lossless. NaN and infinity are never representable.
uint32_t EncodeSizeAndType (uint32_t size, SignatureType type)
 Packs a size and SignatureType into a single encoded integer, with the type in the low 4 bits and the size in the remaining 28 bits.
void DecodeSizeAndType (uint32_t sizeAndType, uint32_t &size, SignatureType &type)
 Unpacks an encoded size-and-type value.
PointerSize DecodePointerSize (uint16_t flags)
 Decodes pointer size information from CBO flags.
uint16_t EncodePointerSize (uint16_t flags, PointerSize pointerSize)
 Encodes pointer size information into CBO flags.
bool IsCBOFormatLoadable (uint32_t majorVersion, uint32_t minorVersion)
 Determines whether a CBO format version can be loaded.
bool IsCBOFormatSupported (uint32_t majorVersion, uint32_t minorVersion)
 Determines whether a CBO format version is fully supported.
BOND_API const char * GetOpCodeMnemonic (OpCode opCode)
 Returns the mnemonic of the given opcode, e.g. "addi" for OPCODE_ADDI.
BOND_API OpCodeParam GetOpCodeParamType (OpCode opCode)
 Returns a value of the OpCodeParam enumeration describing the parameter types for the given opcode.
BOND_API int32_t GetStackDelta (OpCode opCode)
 Returns how much the given opcode moves the stack pointer in multiples of BOND_SLOT_SIZE bytes.
uint32_t GetPointerSize (PointerSize pointerSize)
 Returns the number of bytes in a pointer of the given size.
BOND_API const char * GetBondTypeMnemonic (SignatureType signatureType)
 Returns the mnemonic of the given signature type as it is named in Bond, e.g. "int".
BOND_API char * ExpandBondTypeMnemonic (char *buffer, size_t length, SignatureType signatureType, uint32_t size)
 Writes the mnemonic of the given signature type as it is named in Bond to the given buffer, expanding the size of an aggregate, e.g. "aggr<12>".
BOND_API const char * GetApiTypeMnemonic (SignatureType signatureType)
 Returns the mnemonic of the given signature type as it is named in the C++ API, e.g. "int32_t".
BOND_API char * ExpandApiTypeMnemonic (char *buffer, size_t length, SignatureType signatureType, uint32_t size)
 Writes the mnemonic of the given signature type as it is named in the C++ API to the given buffer, expanding the size of an aggregate, e.g. "aggr<12>".
bool operator< (const Value16 &a, const Value16 &b)
 Returns the result of the expression: a.mUShort < b.mUShort.
bool operator< (const Value32 &a, const Value32 &b)
 Returns the result of the expression: a.mUInt < b.mUInt.
bool operator< (const Value64 &a, const Value64 &b)
 Returns the result of the expression: a.mULong < b.mULong.

Variables

const DataViewIndex INCLUDE_FILE_INDEX
 An index of the source of the include files of the Bond Standard Library, which are embedded in the Bond library.
BOND_API const Bond::NativeBindingCollection IO_BINDING_COLLECTION
BOND_API const Bond::NativeBindingCollection MATH_BINDING_COLLECTION
BOND_API const Bond::NativeBindingCollection MEMORY_BINDING_COLLECTION
BOND_API const Bond::NativeBindingCollection STRING_BINDING_COLLECTION
BOND_API const Bond::NativeBindingCollection TYPE_BINDING_COLLECTION
BOND_API const TypeSpecifier VOID_TYPE_SPECIFIER
 Canonical void type specifier instance.
BOND_API const TypeSpecifier BOOL_TYPE_SPECIFIER
 Canonical bool type specifier instance.
BOND_API const TypeSpecifier CHAR_TYPE_SPECIFIER
 Canonical char type specifier instance.
BOND_API const TypeSpecifier INT_TYPE_SPECIFIER
 Canonical int type specifier instance.
BOND_API const TypeSpecifier UINT_TYPE_SPECIFIER
 Canonical uint type specifier instance.
BOND_API const TypeSpecifier LONG_TYPE_SPECIFIER
 Canonical long type specifier instance.
BOND_API const TypeSpecifier ULONG_TYPE_SPECIFIER
 Canonical ulong type specifier instance.
BOND_API const TypeSpecifier FLOAT_TYPE_SPECIFIER
 Canonical float type specifier instance.
BOND_API const TypeSpecifier DOUBLE_TYPE_SPECIFIER
 Canonical double type specifier instance.
BOND_API const Token VOID_TOKEN
 Constant Token of type KEY_VOID representing the void keyword.
BOND_API const Token BOOL_TOKEN
 Constant Token of type KEY_BOOL representing the bool keyword.
BOND_API const Token CHAR_TOKEN
 Constant Token of type KEY_CHAR representing the char keyword.
BOND_API const Token UCHAR_TOKEN
 Constant Token of type KEY_UCHAR representing the uchar keyword.
BOND_API const Token INT_TOKEN
 Constant Token of type KEY_INT representing the int keyword.
BOND_API const Token UINT_TOKEN
 Constant Token of type KEY_UINT representing the uint keyword.
BOND_API const Token LONG_TOKEN
 Constant Token of type KEY_LONG representing the long keyword.
BOND_API const Token ULONG_TOKEN
 Constant Token of type KEY_ULONG representing the ulong keyword.
BOND_API const Token FLOAT_TOKEN
 Constant Token of type KEY_FLOAT representing the float keyword.
BOND_API const Token DOUBLE_TOKEN
 Constant Token of type KEY_DOUBLE representing the double keyword.
BOND_API const TokenTypeSet PRIMITIVE_TYPE_SPECIFIERS_TYPESET
 Constant TokenTypeSet of all keywords representing Bond primitive types namely: KEY_BOOL, KEY_CHAR, KEY_UCHAR, KEY_SHORT, KEY_USHORT, KEY_INT, KEY_UINT, KEY_LONG, KEY_ULONG, KEY_FLOAT, KEY_DOUBLE and KEY_VOID.
BOND_API const TokenTypeSet BOOLEAN_TYPE_SPECIFIERS_TYPESET
 Constant TokenTypeSet containing only KEY_BOOL.
BOND_API const TokenTypeSet CHAR_TYPE_SPECIFIERS_TYPESET
 Constant TokenTypeSet of all keywords representing Bond character types, namely: KEY_CHAR and KEY_UCHAR.
BOND_API const TokenTypeSet INTEGER_TYPE_SPECIFIERS_TYPESET
 Constant TokenTypeSet of all keywords representing Bond integral types, namely: KEY_CHAR, KEY_UCHAR, KEY_SHORT, KEY_USHORT, KEY_INT, KEY_UINT, KEY_LONG and KEY_ULONG.
BOND_API const TokenTypeSet SIGNED_INTEGER_TYPE_SPECIFIERS_TYPESET
 Constant TokenTypeSet of all keywords representing Bond signed integral types, namely: KEY_CHAR, KEY_SHORT, KEY_INT and KEY_LONG.
BOND_API const TokenTypeSet UNSIGNED_INTEGER_TYPE_SPECIFIERS_TYPESET
 Constant TokenTypeSet of all keywords representing Bond unsigned integral types, namely: KEY_UCHAR, KEY_USHORT, KEY_UINT and KEY_ULONG.
BOND_API const TokenTypeSet LEAST32_INTEGER_TYPE_SPECIFIERS_TYPESET
 Constant TokenTypeSet of all keywords representing Bond integral types having at least 32 bits, namely: KEY_INT, KEY_UINT, KEY_LONG and KEY_ULONG.
BOND_API const TokenTypeSet MOST32_INTEGER_TYPE_SPECIFIERS_TYPESET
 Constant TokenTypeSet of all keywords representing Bond integral types having at most 32 bits, namely: KEY_CHAR, KEY_UCHAR, KEY_SHORT, KEY_USHORT, KEY_INT and KEY_UINT.
BOND_API const TokenTypeSet LONG_INTEGER_TYPE_SPECIFIERS_TYPESET
 Constant TokenTypeSet of all keywords representing Bond long integral types, namely: KEY_LONG and KEY_ULONG.
BOND_API const TokenTypeSet NUMERIC_TYPE_SPECIFIERS_TYPESET
 Constant TokenTypeSet of all keywords representing Bond numeric types, namely: KEY_CHAR, KEY_UCHAR, KEY_SHORT, KEY_USHORT, KEY_INT, KEY_UINT, KEY_LONG, KEY_ULONG, KEY_FLOAT and KEY_DOUBLE.
BOND_API const TokenTypeSet VOID_TYPE_SPECIFIERS_TYPESET
 Constant TokenTypeSet containing only KEY_VOID.
BOND_API const TokenTypeSet TYPE_DESCRIPTORS_TYPESET
 Constant TokenTypeSet of all punctuation token types used to begin a new level of indirection in type descriptors, namely: OP_STAR and OBRACKET.
BOND_API const TokenTypeSet MOST32_INTEGER_CONSTANTS_TYPESET
 Constant TokenTypeSet of all integral literal constants having at most 32 bits, namely: CONST_CHAR, CONST_INT and CONST_UINT.
BOND_API const TokenTypeSet SIGNED_INTEGER_CONSTANTS_TYPESET
 Constant TokenTypeSet of all signed integral literal constants, namely: CONST_CHAR, CONST_INT and CONST_LONG.
BOND_API const TokenTypeSet JUMP_KEYWORDS_TYPESET
 Constant TokenTypeSet of all keywords used for jumps in Bond source code, namely: KEY_BREAK, KEY_CONTINUE and KEY_RETURN.
BOND_API const TokenTypeSet SWITCH_LABELS_TYPESET
 Constant TokenTypeSet of all keywords used for defining case labels in Bond switch statements, namely: KEY_CASE and KEY_DEFAULT.
BOND_API const TokenTypeSet ASSIGNMENT_OPERATORS_TYPESET
 Constant TokenTypeSet of all Bond assignment operators, namely: ASSIGN, ASSIGN_LEFT, ASSIGN_RIGHT, ASSIGN_PLUS, ASSIGN_MINUS, ASSIGN_MULT, ASSIGN_DIV, ASSIGN_MOD, ASSIGN_AND, ASSIGN_OR and ASSIGN_XOR.
BOND_API const TokenTypeSet EQUALITY_OPERATORS_TYPESET
 Constant TokenTypeSet of all Bond equality operators, namely: OP_EQUAL, OP_NOT_EQUAL.
BOND_API const TokenTypeSet RELATIONAL_OPERATORS_TYPESET
 Constant TokenTypeSet of all Bond relational operators, namely: OP_LT, OP_LTE, OP_GT and OP_GTE.
BOND_API const TokenTypeSet SHIFT_OPERATORS_TYPESET
 Constant TokenTypeSet of all Bond shift operators, namely: OP_LEFT and OP_RIGHT.
BOND_API const TokenTypeSet ADDITIVE_OPERATORS_TYPESET
 Constant TokenTypeSet of all Bond additive arithmetic operators, namely: OP_PLUS and OP_MINUS.
BOND_API const TokenTypeSet MULTIPLICATIVE_OPERATORS_TYPESET
 Constant TokenTypeSet of all Bond multiplicative arithmetic operators, namely: OP_STAR, OP_DIV and OP_MOD.
BOND_API const TokenTypeSet UNARY_OPERATORS_TYPESET
 Constant TokenTypeSet of all Bond prefix unary operators, namely: OP_PLUS, OP_MINUS, OP_STAR, OP_INC, OP_DEC, OP_NOT, OP_AMP and OP_BIT_NOT.
BOND_API const TokenTypeSet POSTFIX_OPERATORS_TYPESET
 Constant TokenTypeSet of all Bond postfix unary operators, namely: OP_INC, OP_DEC, OP_ARROW, OPAREN, OBRACKET and PERIOD.
BOND_API const TokenTypeSet PROPERTYOF_OPERATORS_TYPESET
 Constant TokenTypeSet of all Bond operators for retrieving type properties, namely: KEY_ALIGNOFand KEY_SIZEOF.
BOND_API const TokenTypeSet CONSTANT_LITERALS_TYPESET
 Constant TokenTypeSet of all Bond constant literals, namely: CONST_BOOL, CONST_CHAR, CONST_INT, CONST_UINT, CONST_LONG, CONST_ULONG, CONST_FLOAT, CONST_DOUBLE, CONST_STRING and CONST_NULL.
BOND_API const TokenTypeSet BLOCK_DELIMITERS_TYPESET
 Constant TokenTypeSet of tokens delimiting the end of a block of Bond source, namely: CBRACE and END.
BOND_API const TokenTypeSet DECLARATION_DELIMITERS_TYPESET
 Constant TokenTypeSet of tokens delimiting the end of Bond declarations, namely: KEY_ENUM, KEY_NAMESPACE, KEY_NATIVE, KEY_STRUCT, CBRACE, SEMICOLON, and END.
BOND_API const TokenTypeSet INCLUDE_AND_DECLARATION_DELIMITERS_TYPESET
 Constant TokenTypeSet of tokens delimiting the end of Bond declarations and includes, namely: KEY_ENUM, KEY_INCLUDE, KEY_NAMESPACE, KEY_NATIVE, KEY_STRUCT, CBRACE, SEMICOLON, and END.
BOND_API const TokenTypeSet ENUM_DELIMITERS_TYPESET
 Constant TokenTypeSet of tokens delimiting the end of Bond enum declarations, namely: CBRACE, SEMICOLON, and END.
BOND_API const TokenTypeSet ENUMERATOR_DELIMITERS_TYPESET
 Constant TokenTypeSet of tokens delimiting the end of Bond enumerator declarations, namely: CBRACE, SEMICOLON, and COMMA.
BOND_API const TokenTypeSet STRUCT_MEMBER_DELIMITERS_TYPESET
 Constant TokenTypeSet of tokens delimiting the end of Bond struct member declarations, namely: CBRACE and SEMICOLON.
BOND_API const TokenTypeSet INITIALIZER_DELIMITERS_TYPESET
 Constant TokenTypeSet of tokens delimiting the end of Bond initializers, namely: CBRACE, OBRACE and COMMA.
BOND_API const TokenTypeSet SWITCH_SECTION_DELIMITERS_TYPESET
 Constant TokenTypeSet of tokens delimiting the end of Bond switch statement sections, namely: KEY_CASE, KEY_DEFAULT, CBRACE and END.
BOND_API const TokenTypeSet STATEMENT_DELIMITERS_TYPESET
 Constant TokenTypeSet of tokens delimiting the end of Bond statements, namely: KEY_BREAK, KEY_CASE, KEY_CONTINUE, KEY_DEFAULT, KEY_DO, KEY_IF, KEY_FOR, KEY_RETURN, KEY_SWITCH, KEY_USING, KEY_WHILE, OBRACE, CBRACE and SEMICOLON.
BOND_API const TokenTypeSet LABEL_DELIMITERS_TYPESET
 Constant TokenTypeSet of tokens delimiting the end of Bond switch labels, namely: KEY_BREAK, KEY_CASE, KEY_CONTINUE, KEY_DEFAULT, KEY_DO, KEY_IF, KEY_FOR, KEY_RETURN, KEY_SWITCH, KEY_USING, KEY_WHILE, OBRACE, CBRACE, SEMICOLON and COLON.
constexpr StringView BOND_LIST_BLOB_ID {"List"}
 Four-character blob identifier used for list blobs in CBO data.
constexpr StringView BOND_FUNCTION_BLOB_ID {"Func"}
 Four-character blob identifier used for function blobs in CBO data.
constexpr StringView BOND_DATA_BLOB_ID {"Data"}
 Four-character blob identifier used for data blobs in CBO data.
constexpr size_t BOND_BLOB_ID_LENGTH = 4
 Number of bytes in a CBO blob identifier.
const uint32_t BOND_VOID_SIZE = 0
 Size in bytes of the Bond void type.
const uint32_t BOND_BOOL_SIZE = 1
 Size in bytes of the Bond bool type.
const uint32_t BOND_CHAR_SIZE = 1
 Size in bytes of the Bond char type.
const uint32_t BOND_UCHAR_SIZE = 1
 Size in bytes of the Bond uchar type.
const uint32_t BOND_SHORT_SIZE = 2
 Size in bytes of the Bond short type.
const uint32_t BOND_USHORT_SIZE = 2
 Size in bytes of the Bond ushort type.
const uint32_t BOND_INT_SIZE = 4
 Size in bytes of the Bond int type.
const uint32_t BOND_UINT_SIZE = 4
 Size in bytes of the Bond uint type.
const uint32_t BOND_LONG_SIZE = 8
 Size in bytes of the Bond long type.
const uint32_t BOND_ULONG_SIZE = 8
 Size in bytes of the Bond ulong type.
const uint32_t BOND_FLOAT_SIZE = 4
 Size in bytes of the Bond float type.
const uint32_t BOND_DOUBLE_SIZE = 8
 Size in bytes of the Bond double type.
const uint32_t BOND_DEFAULT_STRUCT_SIZE = 4
 Minimum size in bytes of a struct whose layout is computed by the compiler.
const uint32_t BOND_DEFAULT_STRUCT_ALIGN = BOND_DEFAULT_STRUCT_SIZE
 Minimum alignment in bytes of a struct whose layout is computed by the compiler.
const int32_t BOND_SLOT_SIZE = 8
 Size in bytes of a slot on the operand stack of the VM.
const PointerSize BOND_NATIVE_POINTER_SIZE = (sizeof(void *) == 8) ? POINTER_64BIT : POINTER_32BIT
 The size of pointers on the platform for which the code is compiled.
constexpr uint32_t MAGIC_NUMBER = 0x57EDFA57
 The number with which every CBO file begins.
constexpr uint16_t MAJOR_VERSION = 0
 The major version of Bond.
constexpr uint16_t MINOR_VERSION = 9
 The minor version of Bond.
constexpr uint16_t PATCH_VERSION = 0
 The patch version of Bond.
constexpr uint16_t CBO_MAJOR_VERSION = 1
 The major version of the CBO file format written by the CodeGenerator.
constexpr uint16_t CBO_MINOR_VERSION = 0
 The minor version of the CBO file format written by the CodeGenerator.
constexpr uint16_t CBO_MIN_SUPPORTED_MAJOR_VERSION = 1
 The major version of the oldest supported CBO file format.
constexpr uint16_t CBO_MIN_SUPPORTED_MINOR_VERSION = 0
 The minor version of the oldest fully supported CBO file format.
constexpr uint16_t CBO_MAX_SUPPORTED_MAJOR_VERSION = 1
 The major version of the newest supported CBO file format.
constexpr uint16_t CBO_MAX_SUPPORTED_MINOR_VERSION = 0
 The minor version of the newest fully supported CBO file format.
constexpr const char * VERSION_STRING = "0" "." "9" "." "0"
 The version of Bond as a string of the form "major.minor.patch".

Function Documentation

◆ AbsC()

BOND_API void Bond::AbsC ( Bond::StackFrame & frame)

◆ AbsD()

BOND_API void Bond::AbsD ( Bond::StackFrame & frame)

◆ AbsF()

BOND_API void Bond::AbsF ( Bond::StackFrame & frame)

◆ AbsI()

BOND_API void Bond::AbsI ( Bond::StackFrame & frame)

◆ AbsL()

BOND_API void Bond::AbsL ( Bond::StackFrame & frame)

◆ AbsS()

BOND_API void Bond::AbsS ( Bond::StackFrame & frame)

◆ AcosD()

BOND_API void Bond::AcosD ( Bond::StackFrame & frame)

◆ AcosF()

BOND_API void Bond::AcosF ( Bond::StackFrame & frame)

◆ AcoshD()

BOND_API void Bond::AcoshD ( Bond::StackFrame & frame)

◆ AcoshF()

BOND_API void Bond::AcoshF ( Bond::StackFrame & frame)

◆ Allocate()

BOND_API void Bond::Allocate ( Bond::StackFrame & frame)

◆ AllocateAligned()

BOND_API void Bond::AllocateAligned ( Bond::StackFrame & frame)

◆ AllocateAlignedCollected()

BOND_API void Bond::AllocateAlignedCollected ( Bond::StackFrame & frame)

◆ AllocateAlignedWithCollector()

BOND_API void Bond::AllocateAlignedWithCollector ( Bond::StackFrame & frame)

◆ AllocateCollected()

BOND_API void Bond::AllocateCollected ( Bond::StackFrame & frame)

◆ AllocateWithCollector()

BOND_API void Bond::AllocateWithCollector ( Bond::StackFrame & frame)

◆ AsinD()

BOND_API void Bond::AsinD ( Bond::StackFrame & frame)

◆ AsinF()

BOND_API void Bond::AsinF ( Bond::StackFrame & frame)

◆ AsinhD()

BOND_API void Bond::AsinhD ( Bond::StackFrame & frame)

◆ AsinhF()

BOND_API void Bond::AsinhF ( Bond::StackFrame & frame)

◆ Atan2D()

BOND_API void Bond::Atan2D ( Bond::StackFrame & frame)

◆ Atan2F()

BOND_API void Bond::Atan2F ( Bond::StackFrame & frame)

◆ AtanD()

BOND_API void Bond::AtanD ( Bond::StackFrame & frame)

◆ AtanF()

BOND_API void Bond::AtanF ( Bond::StackFrame & frame)

◆ AtanhD()

BOND_API void Bond::AtanhD ( Bond::StackFrame & frame)

◆ AtanhF()

BOND_API void Bond::AtanhF ( Bond::StackFrame & frame)

◆ CbrtD()

BOND_API void Bond::CbrtD ( Bond::StackFrame & frame)

◆ CbrtF()

BOND_API void Bond::CbrtF ( Bond::StackFrame & frame)

◆ CeilD()

BOND_API void Bond::CeilD ( Bond::StackFrame & frame)

◆ CeilF()

BOND_API void Bond::CeilF ( Bond::StackFrame & frame)

◆ ClampC()

BOND_API void Bond::ClampC ( Bond::StackFrame & frame)

◆ ClampD()

BOND_API void Bond::ClampD ( Bond::StackFrame & frame)

◆ ClampF()

BOND_API void Bond::ClampF ( Bond::StackFrame & frame)

◆ ClampI()

BOND_API void Bond::ClampI ( Bond::StackFrame & frame)

◆ ClampL()

BOND_API void Bond::ClampL ( Bond::StackFrame & frame)

◆ ClampS()

BOND_API void Bond::ClampS ( Bond::StackFrame & frame)

◆ ClampUC()

BOND_API void Bond::ClampUC ( Bond::StackFrame & frame)

◆ ClampUI()

BOND_API void Bond::ClampUI ( Bond::StackFrame & frame)

◆ ClampUL()

BOND_API void Bond::ClampUL ( Bond::StackFrame & frame)

◆ ClampUS()

BOND_API void Bond::ClampUS ( Bond::StackFrame & frame)

◆ CopySignD()

BOND_API void Bond::CopySignD ( Bond::StackFrame & frame)

◆ CopySignF()

BOND_API void Bond::CopySignF ( Bond::StackFrame & frame)

◆ CosD()

BOND_API void Bond::CosD ( Bond::StackFrame & frame)

◆ CosF()

BOND_API void Bond::CosF ( Bond::StackFrame & frame)

◆ CoshD()

BOND_API void Bond::CoshD ( Bond::StackFrame & frame)

◆ CoshF()

BOND_API void Bond::CoshF ( Bond::StackFrame & frame)

◆ CreateInputStream()

BOND_API void Bond::CreateInputStream ( Bond::StackFrame & frame)

◆ CreateInputStreamCollected()

BOND_API void Bond::CreateInputStreamCollected ( Bond::StackFrame & frame)

◆ CreateInputStreamWithCollector()

BOND_API void Bond::CreateInputStreamWithCollector ( Bond::StackFrame & frame)

◆ CreateOutputStream()

BOND_API void Bond::CreateOutputStream ( Bond::StackFrame & frame)

◆ CreateOutputStreamCollected()

BOND_API void Bond::CreateOutputStreamCollected ( Bond::StackFrame & frame)

◆ CreateOutputStreamWithCollector()

BOND_API void Bond::CreateOutputStreamWithCollector ( Bond::StackFrame & frame)

◆ ErfcD()

BOND_API void Bond::ErfcD ( Bond::StackFrame & frame)

◆ ErfcF()

BOND_API void Bond::ErfcF ( Bond::StackFrame & frame)

◆ ErfD()

BOND_API void Bond::ErfD ( Bond::StackFrame & frame)

◆ ErfF()

BOND_API void Bond::ErfF ( Bond::StackFrame & frame)

◆ Exp2D()

BOND_API void Bond::Exp2D ( Bond::StackFrame & frame)

◆ Exp2F()

BOND_API void Bond::Exp2F ( Bond::StackFrame & frame)

◆ ExpD()

BOND_API void Bond::ExpD ( Bond::StackFrame & frame)

◆ ExpF()

BOND_API void Bond::ExpF ( Bond::StackFrame & frame)

◆ Expm1D()

BOND_API void Bond::Expm1D ( Bond::StackFrame & frame)

◆ Expm1F()

BOND_API void Bond::Expm1F ( Bond::StackFrame & frame)

◆ FloorD()

BOND_API void Bond::FloorD ( Bond::StackFrame & frame)

◆ FloorF()

BOND_API void Bond::FloorF ( Bond::StackFrame & frame)

◆ FmaD()

BOND_API void Bond::FmaD ( Bond::StackFrame & frame)

◆ FmaF()

BOND_API void Bond::FmaF ( Bond::StackFrame & frame)

◆ FmodD()

BOND_API void Bond::FmodD ( Bond::StackFrame & frame)

◆ FmodF()

BOND_API void Bond::FmodF ( Bond::StackFrame & frame)

◆ Free()

BOND_API void Bond::Free ( Bond::StackFrame & frame)

◆ FreeAligned()

BOND_API void Bond::FreeAligned ( Bond::StackFrame & frame)

◆ FreeInputStream()

BOND_API void Bond::FreeInputStream ( Bond::StackFrame & frame)

◆ FreeOutputStream()

BOND_API void Bond::FreeOutputStream ( Bond::StackFrame & frame)

◆ FrexpD()

BOND_API void Bond::FrexpD ( Bond::StackFrame & frame)

◆ FrexpF()

BOND_API void Bond::FrexpF ( Bond::StackFrame & frame)

◆ GetCollector()

BOND_API void Bond::GetCollector ( Bond::StackFrame & frame)

◆ HypotD()

BOND_API void Bond::HypotD ( Bond::StackFrame & frame)

◆ HypotF()

BOND_API void Bond::HypotF ( Bond::StackFrame & frame)

◆ IlogbD()

BOND_API void Bond::IlogbD ( Bond::StackFrame & frame)

◆ IlogbF()

BOND_API void Bond::IlogbF ( Bond::StackFrame & frame)

◆ InfD()

BOND_API void Bond::InfD ( Bond::StackFrame & frame)

◆ InfF()

BOND_API void Bond::InfF ( Bond::StackFrame & frame)

◆ InputStream__AddOffset()

BOND_API void Bond::InputStream__AddOffset ( Bond::StackFrame & frame)

◆ InputStream__ClearError()

BOND_API void Bond::InputStream__ClearError ( Bond::StackFrame & frame)

◆ InputStream__ClearFlags()

BOND_API void Bond::InputStream__ClearFlags ( Bond::StackFrame & frame)

◆ InputStream__Close()

BOND_API void Bond::InputStream__Close ( Bond::StackFrame & frame)

◆ InputStream__Get()

BOND_API void Bond::InputStream__Get ( Bond::StackFrame & frame)

◆ InputStream__GetEndPosition()

BOND_API void Bond::InputStream__GetEndPosition ( Bond::StackFrame & frame)

◆ InputStream__GetFlags()

BOND_API void Bond::InputStream__GetFlags ( Bond::StackFrame & frame)

◆ InputStream__GetPosition()

BOND_API void Bond::InputStream__GetPosition ( Bond::StackFrame & frame)

◆ InputStream__HasError()

BOND_API void Bond::InputStream__HasError ( Bond::StackFrame & frame)

◆ InputStream__IsEof()

BOND_API void Bond::InputStream__IsEof ( Bond::StackFrame & frame)

◆ InputStream__Read()

BOND_API void Bond::InputStream__Read ( Bond::StackFrame & frame)

◆ InputStream__ScanB()

BOND_API void Bond::InputStream__ScanB ( Bond::StackFrame & frame)

◆ InputStream__ScanC()

BOND_API void Bond::InputStream__ScanC ( Bond::StackFrame & frame)

◆ InputStream__ScanD()

BOND_API void Bond::InputStream__ScanD ( Bond::StackFrame & frame)

◆ InputStream__ScanF()

BOND_API void Bond::InputStream__ScanF ( Bond::StackFrame & frame)

◆ InputStream__ScanI()

BOND_API void Bond::InputStream__ScanI ( Bond::StackFrame & frame)

◆ InputStream__ScanL()

BOND_API void Bond::InputStream__ScanL ( Bond::StackFrame & frame)

◆ InputStream__ScanStr()

BOND_API void Bond::InputStream__ScanStr ( Bond::StackFrame & frame)

◆ InputStream__ScanUI()

BOND_API void Bond::InputStream__ScanUI ( Bond::StackFrame & frame)

◆ InputStream__ScanUL()

BOND_API void Bond::InputStream__ScanUL ( Bond::StackFrame & frame)

◆ InputStream__SetFlags()

BOND_API void Bond::InputStream__SetFlags ( Bond::StackFrame & frame)

◆ InputStream__SetPosition()

BOND_API void Bond::InputStream__SetPosition ( Bond::StackFrame & frame)

◆ InputStream__SetPositionFromEnd()

BOND_API void Bond::InputStream__SetPositionFromEnd ( Bond::StackFrame & frame)

◆ InputStream__UnsetFlags()

BOND_API void Bond::InputStream__UnsetFlags ( Bond::StackFrame & frame)

◆ IsAlnum()

BOND_API void Bond::IsAlnum ( Bond::StackFrame & frame)

◆ IsAlpha()

BOND_API void Bond::IsAlpha ( Bond::StackFrame & frame)

◆ IsBlank()

BOND_API void Bond::IsBlank ( Bond::StackFrame & frame)

◆ IsCntrl()

BOND_API void Bond::IsCntrl ( Bond::StackFrame & frame)

◆ IsDigit()

BOND_API void Bond::IsDigit ( Bond::StackFrame & frame)

◆ IsFiniteD()

BOND_API void Bond::IsFiniteD ( Bond::StackFrame & frame)

◆ IsFiniteF()

BOND_API void Bond::IsFiniteF ( Bond::StackFrame & frame)

◆ IsGraph()

BOND_API void Bond::IsGraph ( Bond::StackFrame & frame)

◆ IsInfD()

BOND_API void Bond::IsInfD ( Bond::StackFrame & frame)

◆ IsInfF()

BOND_API void Bond::IsInfF ( Bond::StackFrame & frame)

◆ IsLower()

BOND_API void Bond::IsLower ( Bond::StackFrame & frame)

◆ IsNaND()

BOND_API void Bond::IsNaND ( Bond::StackFrame & frame)

◆ IsNaNF()

BOND_API void Bond::IsNaNF ( Bond::StackFrame & frame)

◆ IsPrint()

BOND_API void Bond::IsPrint ( Bond::StackFrame & frame)

◆ IsPunct()

BOND_API void Bond::IsPunct ( Bond::StackFrame & frame)

◆ IsSpace()

BOND_API void Bond::IsSpace ( Bond::StackFrame & frame)

◆ IsUpper()

BOND_API void Bond::IsUpper ( Bond::StackFrame & frame)

◆ IsXDigit()

BOND_API void Bond::IsXDigit ( Bond::StackFrame & frame)

◆ LdexpD()

BOND_API void Bond::LdexpD ( Bond::StackFrame & frame)

◆ LdexpF()

BOND_API void Bond::LdexpF ( Bond::StackFrame & frame)

◆ LgammaD()

BOND_API void Bond::LgammaD ( Bond::StackFrame & frame)

◆ LgammaF()

BOND_API void Bond::LgammaF ( Bond::StackFrame & frame)

◆ Log10D()

BOND_API void Bond::Log10D ( Bond::StackFrame & frame)

◆ Log10F()

BOND_API void Bond::Log10F ( Bond::StackFrame & frame)

◆ Log1pD()

BOND_API void Bond::Log1pD ( Bond::StackFrame & frame)

◆ Log1pF()

BOND_API void Bond::Log1pF ( Bond::StackFrame & frame)

◆ Log2D()

BOND_API void Bond::Log2D ( Bond::StackFrame & frame)

◆ Log2F()

BOND_API void Bond::Log2F ( Bond::StackFrame & frame)

◆ LogbD()

BOND_API void Bond::LogbD ( Bond::StackFrame & frame)

◆ LogbF()

BOND_API void Bond::LogbF ( Bond::StackFrame & frame)

◆ LogD()

BOND_API void Bond::LogD ( Bond::StackFrame & frame)

◆ LogF()

BOND_API void Bond::LogF ( Bond::StackFrame & frame)

◆ LroundD()

BOND_API void Bond::LroundD ( Bond::StackFrame & frame)

◆ LroundF()

BOND_API void Bond::LroundF ( Bond::StackFrame & frame)

◆ MaxC()

BOND_API void Bond::MaxC ( Bond::StackFrame & frame)

◆ MaxD()

BOND_API void Bond::MaxD ( Bond::StackFrame & frame)

◆ MaxF()

BOND_API void Bond::MaxF ( Bond::StackFrame & frame)

◆ MaxI()

BOND_API void Bond::MaxI ( Bond::StackFrame & frame)

◆ MaxL()

BOND_API void Bond::MaxL ( Bond::StackFrame & frame)

◆ MaxS()

BOND_API void Bond::MaxS ( Bond::StackFrame & frame)

◆ MaxUC()

BOND_API void Bond::MaxUC ( Bond::StackFrame & frame)

◆ MaxUI()

BOND_API void Bond::MaxUI ( Bond::StackFrame & frame)

◆ MaxUL()

BOND_API void Bond::MaxUL ( Bond::StackFrame & frame)

◆ MaxUS()

BOND_API void Bond::MaxUS ( Bond::StackFrame & frame)

◆ Memcpy()

BOND_API void Bond::Memcpy ( Bond::StackFrame & frame)

◆ MinC()

BOND_API void Bond::MinC ( Bond::StackFrame & frame)

◆ MinD()

BOND_API void Bond::MinD ( Bond::StackFrame & frame)

◆ MinF()

BOND_API void Bond::MinF ( Bond::StackFrame & frame)

◆ MinI()

BOND_API void Bond::MinI ( Bond::StackFrame & frame)

◆ MinL()

BOND_API void Bond::MinL ( Bond::StackFrame & frame)

◆ MinS()

BOND_API void Bond::MinS ( Bond::StackFrame & frame)

◆ MinUC()

BOND_API void Bond::MinUC ( Bond::StackFrame & frame)

◆ MinUI()

BOND_API void Bond::MinUI ( Bond::StackFrame & frame)

◆ MinUL()

BOND_API void Bond::MinUL ( Bond::StackFrame & frame)

◆ MinUS()

BOND_API void Bond::MinUS ( Bond::StackFrame & frame)

◆ ModfD()

BOND_API void Bond::ModfD ( Bond::StackFrame & frame)

◆ ModfF()

BOND_API void Bond::ModfF ( Bond::StackFrame & frame)

◆ NaND()

BOND_API void Bond::NaND ( Bond::StackFrame & frame)

◆ NaNF()

BOND_API void Bond::NaNF ( Bond::StackFrame & frame)

◆ NearbyintD()

BOND_API void Bond::NearbyintD ( Bond::StackFrame & frame)

◆ NearbyintF()

BOND_API void Bond::NearbyintF ( Bond::StackFrame & frame)

◆ NextafterD()

BOND_API void Bond::NextafterD ( Bond::StackFrame & frame)

◆ NextafterF()

BOND_API void Bond::NextafterF ( Bond::StackFrame & frame)

◆ OutputStream__AddOffset()

BOND_API void Bond::OutputStream__AddOffset ( Bond::StackFrame & frame)

◆ OutputStream__ClearError()

BOND_API void Bond::OutputStream__ClearError ( Bond::StackFrame & frame)

◆ OutputStream__ClearFlags()

BOND_API void Bond::OutputStream__ClearFlags ( Bond::StackFrame & frame)

◆ OutputStream__Close()

BOND_API void Bond::OutputStream__Close ( Bond::StackFrame & frame)

◆ OutputStream__Flush()

BOND_API void Bond::OutputStream__Flush ( Bond::StackFrame & frame)

◆ OutputStream__GetEndPosition()

BOND_API void Bond::OutputStream__GetEndPosition ( Bond::StackFrame & frame)

◆ OutputStream__GetFlags()

BOND_API void Bond::OutputStream__GetFlags ( Bond::StackFrame & frame)

◆ OutputStream__GetPosition()

BOND_API void Bond::OutputStream__GetPosition ( Bond::StackFrame & frame)

◆ OutputStream__GetPrecision()

BOND_API void Bond::OutputStream__GetPrecision ( Bond::StackFrame & frame)

◆ OutputStream__GetWidth()

BOND_API void Bond::OutputStream__GetWidth ( Bond::StackFrame & frame)

◆ OutputStream__HasError()

BOND_API void Bond::OutputStream__HasError ( Bond::StackFrame & frame)

◆ OutputStream__IsEof()

BOND_API void Bond::OutputStream__IsEof ( Bond::StackFrame & frame)

◆ OutputStream__PrintB()

BOND_API void Bond::OutputStream__PrintB ( Bond::StackFrame & frame)

◆ OutputStream__PrintC()

BOND_API void Bond::OutputStream__PrintC ( Bond::StackFrame & frame)

◆ OutputStream__PrintD()

BOND_API void Bond::OutputStream__PrintD ( Bond::StackFrame & frame)

◆ OutputStream__PrintF()

BOND_API void Bond::OutputStream__PrintF ( Bond::StackFrame & frame)

◆ OutputStream__PrintI()

BOND_API void Bond::OutputStream__PrintI ( Bond::StackFrame & frame)

◆ OutputStream__PrintL()

BOND_API void Bond::OutputStream__PrintL ( Bond::StackFrame & frame)

◆ OutputStream__PrintStr()

BOND_API void Bond::OutputStream__PrintStr ( Bond::StackFrame & frame)

◆ OutputStream__PrintUI()

BOND_API void Bond::OutputStream__PrintUI ( Bond::StackFrame & frame)

◆ OutputStream__PrintUL()

BOND_API void Bond::OutputStream__PrintUL ( Bond::StackFrame & frame)

◆ OutputStream__Put()

BOND_API void Bond::OutputStream__Put ( Bond::StackFrame & frame)

◆ OutputStream__SetFlags()

BOND_API void Bond::OutputStream__SetFlags ( Bond::StackFrame & frame)

◆ OutputStream__SetPosition()

BOND_API void Bond::OutputStream__SetPosition ( Bond::StackFrame & frame)

◆ OutputStream__SetPositionFromEnd()

BOND_API void Bond::OutputStream__SetPositionFromEnd ( Bond::StackFrame & frame)

◆ OutputStream__SetPrecision()

BOND_API void Bond::OutputStream__SetPrecision ( Bond::StackFrame & frame)

◆ OutputStream__SetWidth()

BOND_API void Bond::OutputStream__SetWidth ( Bond::StackFrame & frame)

◆ OutputStream__UnsetFlags()

BOND_API void Bond::OutputStream__UnsetFlags ( Bond::StackFrame & frame)

◆ OutputStream__Write()

BOND_API void Bond::OutputStream__Write ( Bond::StackFrame & frame)

◆ PowD()

BOND_API void Bond::PowD ( Bond::StackFrame & frame)

◆ PowF()

BOND_API void Bond::PowF ( Bond::StackFrame & frame)

◆ RemainderD()

BOND_API void Bond::RemainderD ( Bond::StackFrame & frame)

◆ RemainderF()

BOND_API void Bond::RemainderF ( Bond::StackFrame & frame)

◆ RemquoD()

BOND_API void Bond::RemquoD ( Bond::StackFrame & frame)

◆ RemquoF()

BOND_API void Bond::RemquoF ( Bond::StackFrame & frame)

◆ RintD()

BOND_API void Bond::RintD ( Bond::StackFrame & frame)

◆ RintF()

BOND_API void Bond::RintF ( Bond::StackFrame & frame)

◆ RoundD()

BOND_API void Bond::RoundD ( Bond::StackFrame & frame)

◆ RoundF()

BOND_API void Bond::RoundF ( Bond::StackFrame & frame)

◆ ScalbnD()

BOND_API void Bond::ScalbnD ( Bond::StackFrame & frame)

◆ ScalbnF()

BOND_API void Bond::ScalbnF ( Bond::StackFrame & frame)

◆ SignBitD()

BOND_API void Bond::SignBitD ( Bond::StackFrame & frame)

◆ SignBitF()

BOND_API void Bond::SignBitF ( Bond::StackFrame & frame)

◆ SinD()

BOND_API void Bond::SinD ( Bond::StackFrame & frame)

◆ SinF()

BOND_API void Bond::SinF ( Bond::StackFrame & frame)

◆ SinhD()

BOND_API void Bond::SinhD ( Bond::StackFrame & frame)

◆ SinhF()

BOND_API void Bond::SinhF ( Bond::StackFrame & frame)

◆ SqrtD()

BOND_API void Bond::SqrtD ( Bond::StackFrame & frame)

◆ SqrtF()

BOND_API void Bond::SqrtF ( Bond::StackFrame & frame)

◆ StdErr()

BOND_API void Bond::StdErr ( Bond::StackFrame & frame)

◆ StdIn()

BOND_API void Bond::StdIn ( Bond::StackFrame & frame)

◆ StdOut()

BOND_API void Bond::StdOut ( Bond::StackFrame & frame)

◆ Strcmp()

BOND_API void Bond::Strcmp ( Bond::StackFrame & frame)

◆ Strlen()

BOND_API void Bond::Strlen ( Bond::StackFrame & frame)

◆ TanD()

BOND_API void Bond::TanD ( Bond::StackFrame & frame)

◆ TanF()

BOND_API void Bond::TanF ( Bond::StackFrame & frame)

◆ TanhD()

BOND_API void Bond::TanhD ( Bond::StackFrame & frame)

◆ TanhF()

BOND_API void Bond::TanhF ( Bond::StackFrame & frame)

◆ TgammaD()

BOND_API void Bond::TgammaD ( Bond::StackFrame & frame)

◆ TgammaF()

BOND_API void Bond::TgammaF ( Bond::StackFrame & frame)

◆ ToLower()

BOND_API void Bond::ToLower ( Bond::StackFrame & frame)

◆ ToUpper()

BOND_API void Bond::ToUpper ( Bond::StackFrame & frame)

◆ TruncD()

BOND_API void Bond::TruncD ( Bond::StackFrame & frame)

◆ TruncF()

BOND_API void Bond::TruncF ( Bond::StackFrame & frame)

◆ TryParseDouble()

BOND_API void Bond::TryParseDouble ( Bond::StackFrame & frame)

◆ TryParseFloat()

BOND_API void Bond::TryParseFloat ( Bond::StackFrame & frame)

◆ TryParseInt()

BOND_API void Bond::TryParseInt ( Bond::StackFrame & frame)

◆ TryParseLong()

BOND_API void Bond::TryParseLong ( Bond::StackFrame & frame)

◆ Utf8Decode()

BOND_API void Bond::Utf8Decode ( Bond::StackFrame & frame)

◆ Utf8Encode()

BOND_API void Bond::Utf8Encode ( Bond::StackFrame & frame)

◆ Utf8IsValid()

BOND_API void Bond::Utf8IsValid ( Bond::StackFrame & frame)

◆ Utf8Length()

BOND_API void Bond::Utf8Length ( Bond::StackFrame & frame)

Variable Documentation

◆ CBO_MAJOR_VERSION

uint16_t Bond::CBO_MAJOR_VERSION = 1
constexpr

The major version of the CBO file format written by the CodeGenerator.

◆ CBO_MAX_SUPPORTED_MAJOR_VERSION

uint16_t Bond::CBO_MAX_SUPPORTED_MAJOR_VERSION = 1
constexpr

The major version of the newest supported CBO file format.

See also
IsCBOFormatLoadable, IsCBOFormatSupported

◆ CBO_MAX_SUPPORTED_MINOR_VERSION

uint16_t Bond::CBO_MAX_SUPPORTED_MINOR_VERSION = 0
constexpr

The minor version of the newest fully supported CBO file format.

See also
IsCBOFormatSupported

◆ CBO_MIN_SUPPORTED_MAJOR_VERSION

uint16_t Bond::CBO_MIN_SUPPORTED_MAJOR_VERSION = 1
constexpr

The major version of the oldest supported CBO file format.

CBO files whose major version is between CBO_MIN_SUPPORTED_MAJOR_VERSION and CBO_MAX_SUPPORTED_MAJOR_VERSION can be loaded, regardless of their minor version.

See also
IsCBOFormatLoadable, IsCBOFormatSupported

◆ CBO_MIN_SUPPORTED_MINOR_VERSION

uint16_t Bond::CBO_MIN_SUPPORTED_MINOR_VERSION = 0
constexpr

The minor version of the oldest fully supported CBO file format.

See also
IsCBOFormatSupported

◆ CBO_MINOR_VERSION

uint16_t Bond::CBO_MINOR_VERSION = 0
constexpr

The minor version of the CBO file format written by the CodeGenerator.

◆ IO_BINDING_COLLECTION

BOND_API const Bond::NativeBindingCollection Bond::IO_BINDING_COLLECTION
extern

◆ MAGIC_NUMBER

uint32_t Bond::MAGIC_NUMBER = 0x57EDFA57
constexpr

The number with which every CBO file begins.

◆ MAJOR_VERSION

uint16_t Bond::MAJOR_VERSION = 0
constexpr

The major version of Bond.

◆ MATH_BINDING_COLLECTION

BOND_API const Bond::NativeBindingCollection Bond::MATH_BINDING_COLLECTION
extern

◆ MEMORY_BINDING_COLLECTION

BOND_API const Bond::NativeBindingCollection Bond::MEMORY_BINDING_COLLECTION
extern

◆ MINOR_VERSION

uint16_t Bond::MINOR_VERSION = 9
constexpr

The minor version of Bond.

◆ PATCH_VERSION

uint16_t Bond::PATCH_VERSION = 0
constexpr

The patch version of Bond.

◆ STRING_BINDING_COLLECTION

BOND_API const Bond::NativeBindingCollection Bond::STRING_BINDING_COLLECTION
extern

◆ TYPE_BINDING_COLLECTION

BOND_API const Bond::NativeBindingCollection Bond::TYPE_BINDING_COLLECTION
extern

◆ VERSION_STRING

const char* Bond::VERSION_STRING = "0" "." "9" "." "0"
inlineconstexpr

The version of Bond as a string of the form "major.minor.patch".