libqasm
library for handling cQASM files
|
Header file for the semantic tree node classes. More...
Go to the source code of this file.
Classes | |
class | cqasm::v1::semantic::Visitor< T > |
Base class for the visitor pattern for the tree. More... | |
class | cqasm::v1::semantic::Node |
Main class for all nodes. More... | |
class | cqasm::v1::semantic::Annotated |
Represents a node that carries annotation data. More... | |
class | cqasm::v1::semantic::AnnotationData |
Represents an annotation. More... | |
class | cqasm::v1::semantic::Block |
A block of statements. More... | |
class | cqasm::v1::semantic::Statement |
A statement. More... | |
class | cqasm::v1::semantic::Structured |
Any version 1.2+ structured control-flow statement. More... | |
class | cqasm::v1::semantic::BreakStatement |
A break statement. More... | |
class | cqasm::v1::semantic::Bundle |
A bundle of instructions, to be executed in parallel. More... | |
class | cqasm::v1::semantic::BundleExt |
A bundle of instructions, to be executed in parallel. More... | |
class | cqasm::v1::semantic::ContinueStatement |
A continue statement. More... | |
class | cqasm::v1::semantic::ErrorModel |
Error model information. More... | |
class | cqasm::v1::semantic::ForLoop |
A C-style for loop. More... | |
class | cqasm::v1::semantic::ForeachLoop |
A foreach loop. More... | |
class | cqasm::v1::semantic::InstructionBase |
An instruction (a.k.a. More... | |
class | cqasm::v1::semantic::GotoInstruction |
A version 1.2+ goto instruction. More... | |
class | cqasm::v1::semantic::IfElse |
An if-else chain. More... | |
class | cqasm::v1::semantic::IfElseBranch |
A single condition + block for use in an if-else chain. More... | |
class | cqasm::v1::semantic::Instruction |
A regular instruction. More... | |
class | cqasm::v1::semantic::Mapping |
A mapping. More... | |
class | cqasm::v1::semantic::Program |
A complete program. More... | |
class | cqasm::v1::semantic::RepeatUntilLoop |
A repeat-until loop. More... | |
class | cqasm::v1::semantic::SetInstruction |
A version 1.2+ assignment instruction. More... | |
class | cqasm::v1::semantic::Subcircuit |
A subcircuit. More... | |
class | cqasm::v1::semantic::Variable |
A variable. More... | |
class | cqasm::v1::semantic::Version |
The file version identifier. More... | |
class | cqasm::v1::semantic::WhileLoop |
A while loop. More... | |
class | cqasm::v1::semantic::VisitorBase |
Internal class for implementing the visitor pattern. More... | |
class | cqasm::v1::semantic::Visitor< T > |
Base class for the visitor pattern for the tree. More... | |
class | cqasm::v1::semantic::RecursiveVisitor |
Visitor base class defaulting to DFS pre-order traversal. More... | |
class | cqasm::v1::semantic::Dumper |
Visitor class that debug-dumps a tree to a stream. More... | |
Namespaces | |
cqasm | |
Toplevel namespace with entry points for the new API. | |
cqasm::v1 | |
Namespace for the "new" cQASM 1.x API. | |
cqasm::v1::semantic | |
Namespace for the semantic tree node classes. | |
Typedefs | |
using | cqasm::v1::semantic::Base = cqasm::tree::Base |
template<class T > | |
using | cqasm::v1::semantic::Maybe = cqasm::tree::Maybe< T > |
template<class T > | |
using | cqasm::v1::semantic::One = cqasm::tree::One< T > |
template<class T > | |
using | cqasm::v1::semantic::Any = cqasm::tree::Any< T > |
template<class T > | |
using | cqasm::v1::semantic::Many = cqasm::tree::Many< T > |
template<class T > | |
using | cqasm::v1::semantic::OptLink = cqasm::tree::OptLink< T > |
template<class T > | |
using | cqasm::v1::semantic::Link = cqasm::tree::Link< T > |
Functions | |
std::ostream & | cqasm::v1::semantic::operator<< (std::ostream &os, const Node &object) |
Stream << overload for tree nodes (writes debug dump). More... | |
Header file for the semantic tree node classes.
Definition in file cqasm-v1-semantic-gen.hpp.
#include <iostream>
#include "cqasm-tree.hpp"
#include "cqasm-v1-primitives.hpp"
#include "cqasm-v1-values.hpp"
#include "cqasm-v1-error-model.hpp"
#include "cqasm-v1-instruction.hpp"