|
libqasm
library for handling cQASM files
|
Namespace for the abstract syntax tree node classes.
Classes | |
| class | Add |
| Addition operator. More... | |
| class | Annotated |
| Represents a node that carries annotation data. More... | |
| class | AnnotationData |
| Represents an annotation. More... | |
| class | ArithOp |
| Arithmetic operators. More... | |
| class | Assignment |
| An assignment statement within a loop definition. More... | |
| class | BinaryOp |
| Any binary operator. More... | |
| class | BitwiseAnd |
| Bitwise AND operator. More... | |
| class | BitwiseNot |
| Bitwise NOT (one's complement). More... | |
| class | BitwiseOp |
| Bitwise operators. More... | |
| class | BitwiseOr |
| Bitwise OR operator. More... | |
| class | BitwiseXor |
| Bitwise XOR operator. More... | |
| class | BreakStatement |
| A break statement. More... | |
| class | Bundle |
| A list of parallel instructions. More... | |
| class | CmpEq |
| Equality operator. More... | |
| class | CmpGe |
| Greater-than-or-equal operator. More... | |
| class | CmpGt |
| Greater-than operator. More... | |
| class | CmpLe |
| Less-than-or-equal operator. More... | |
| class | CmpLt |
| Less-than operator. More... | |
| class | CmpNe |
| Inequality operator. More... | |
| class | CmpOp |
| Comparison operators. More... | |
| class | ContinueStatement |
| A continue statement. More... | |
| class | Divide |
| True division operator. More... | |
| class | Dumper |
| Visitor class that debug-dumps a tree to a stream. More... | |
| class | ErroneousExpression |
| Placeholder for an expression with a parse error. More... | |
| class | ErroneousProgram |
| Placeholder for a program with a parse error. More... | |
| class | ErroneousStatement |
| Placeholder for a statement with a parse error. More... | |
| class | Expression |
| Any kind of expression. More... | |
| class | ExpressionList |
| Represents a comma-separated list of expressions. More... | |
| class | FloatLiteral |
| A floating point literal. More... | |
| class | ForeachLoop |
| A foreach loop. More... | |
| class | ForLoop |
| A C-style for loop. More... | |
| class | FunctionCall |
| A function call. More... | |
| class | Identifier |
| An identifier. More... | |
| class | IfElse |
| An if-else chain. More... | |
| class | IfElseBranch |
| A single condition + block for use in an if-else chain. More... | |
| class | Index |
| Indexation operator. More... | |
| class | IndexEntry |
| An entry in an index list. More... | |
| class | IndexItem |
| A single index in an index list. More... | |
| class | IndexList |
| A list of one or more indices. More... | |
| class | IndexRange |
| An inclusive range of indices in an index list. More... | |
| class | Instruction |
| Any kind of instruction. More... | |
| class | IntDivide |
| Integer division operator. More... | |
| class | IntegerLiteral |
| An integer literal. More... | |
| class | JsonLiteral |
| Represents a JSON literal. More... | |
| class | LogicalAnd |
| Logical AND operator. More... | |
| class | LogicalNot |
| Logical/boolean NOT. More... | |
| class | LogicalOp |
| Logical operators. More... | |
| class | LogicalOr |
| Logical OR operator. More... | |
| class | LogicalXor |
| Logical XOR operator. More... | |
| class | Mapping |
| A mapping (alias) for an expression. More... | |
| class | MatrixLiteral |
| Represents a matrix literal. More... | |
| class | Modulo |
| Modulo operator. More... | |
| class | Multiply |
| Multiplication operator. More... | |
| class | Negate |
| Negation operator (two's complement). More... | |
| class | Node |
| Main class for all nodes. More... | |
| class | Power |
| Exponentiation operator. More... | |
| class | Program |
| A complete program. More... | |
| class | RecursiveVisitor |
| Visitor base class defaulting to DFS pre-order traversal. More... | |
| class | RepeatUntilLoop |
| A repeat-until loop. More... | |
| class | Root |
| Any root node for the AST. More... | |
| class | ShiftLeft |
| Shift-left operator. More... | |
| class | ShiftOp |
| Shift operators. More... | |
| class | ShiftRightArith |
| Arithmetic/signed shift-right operator (shifts in sign). More... | |
| class | ShiftRightLogic |
| Logical/unsigned shift-right operator (shifts in zero). More... | |
| class | Statement |
| Any kind of statement. More... | |
| class | StatementList |
| A list of statements. More... | |
| class | StringBuilder |
| Special/temporary string builder node, used to build strings from fragments and escape sequences while parsing. More... | |
| class | StringLiteral |
| Represents a string literal. More... | |
| class | Structured |
| Any version 1.2+ structured control-flow statement. More... | |
| class | Subcircuit |
| A subcircuit header. More... | |
| class | Subtract |
| Subtraction operator. More... | |
| class | TernaryCond |
| Ternary conditional operator. More... | |
| class | UnaryOp |
| Any unary operator. More... | |
| class | Variables |
| One or more variable declaration for some type. More... | |
| class | Version |
| The file version identifier. More... | |
| class | Visitor |
| Base class for the visitor pattern for the tree. More... | |
| class | VisitorBase |
| Internal class for implementing the visitor pattern. More... | |
| class | WhileLoop |
| A while loop. More... | |
Typedefs | |
| using | Base = cqasm::tree::Base |
| template<class T > | |
| using | Maybe = cqasm::tree::Maybe< T > |
| template<class T > | |
| using | One = cqasm::tree::One< T > |
| template<class T > | |
| using | Any = cqasm::tree::Any< T > |
| template<class T > | |
| using | Many = cqasm::tree::Many< T > |
| template<class T > | |
| using | OptLink = cqasm::tree::OptLink< T > |
| template<class T > | |
| using | Link = cqasm::tree::Link< T > |
Functions | |
| std::ostream & | operator<< (std::ostream &os, const Node &object) |
| Stream << overload for tree nodes (writes debug dump). More... | |
| using cqasm::v1::ast::Base = typedef cqasm::tree::Base |
Definition at line 224 of file cqasm-v1-ast-gen.hpp.
| using cqasm::v1::ast::Maybe = typedef cqasm::tree::Maybe<T> |
Definition at line 225 of file cqasm-v1-ast-gen.hpp.
| using cqasm::v1::ast::One = typedef cqasm::tree::One<T> |
Definition at line 226 of file cqasm-v1-ast-gen.hpp.
| using cqasm::v1::ast::Any = typedef cqasm::tree::Any<T> |
Definition at line 227 of file cqasm-v1-ast-gen.hpp.
| using cqasm::v1::ast::Many = typedef cqasm::tree::Many<T> |
Definition at line 228 of file cqasm-v1-ast-gen.hpp.
| using cqasm::v1::ast::OptLink = typedef cqasm::tree::OptLink<T> |
Definition at line 229 of file cqasm-v1-ast-gen.hpp.
| using cqasm::v1::ast::Link = typedef cqasm::tree::Link<T> |
Definition at line 230 of file cqasm-v1-ast-gen.hpp.
|
strong |
Enumeration of all node types.
Definition at line 315 of file cqasm-v1-ast-gen.hpp.
| std::ostream & cqasm::v1::ast::operator<< | ( | std::ostream & | os, |
| const Node & | object | ||
| ) |
Stream << overload for tree nodes (writes debug dump).
Definition at line 13758 of file cqasm-v1-ast-gen.cpp.
1.8.13