|
Maestro 0.1.0
Unified interface for quantum circuit simulation
|
#include <math.h>#include <boost/fusion/include/adapt_struct.hpp>#include <boost/fusion/include/io.hpp>#include <boost/phoenix.hpp>#include <boost/phoenix/object.hpp>#include <boost/spirit/include/qi.hpp>#include <algorithm>#include <optional>#include <string>#include <variant>#include <vector>Go to the source code of this file.
Classes | |
| class | qasm::AbstractSyntaxTree |
| class | qasm::Constant |
| struct | qasm::MakeConstantExpression |
| struct | qasm::MakeConstantExpression::result< typename > |
| class | qasm::Variable |
| struct | qasm::MakeVariableExpression |
| struct | qasm::MakeVariableExpression::result< typename > |
| class | qasm::BinaryOperator |
| struct | qasm::MakeBinaryExpression |
| struct | qasm::MakeBinaryExpression::result< typename, typename, typename > |
| class | qasm::UnaryOperator |
| struct | qasm::MakeUnaryExpression |
| struct | qasm::MakeUnaryExpression::result< typename, typename > |
| class | qasm::Function |
| struct | qasm::MakeFunctionExpression |
| struct | qasm::MakeFunctionExpression::result< typename, typename, typename > |
| class | qasm::Expression |
Namespaces | |
| namespace | qasm |
Macros | |
| #define | _EXPR_H_ |
| #define | _USE_MATH_DEFINES |
Typedefs | |
| typedef std::shared_ptr< AbstractSyntaxTree > | qasm::AbstractSyntaxTreePtr |
Functions | |
| template<typename Expr> | |
| static AbstractSyntaxTreePtr | qasm::Clone (Expr const &t) |
Variables | |
| phx::function< MakeConstantExpression > | qasm::MakeConstant |
| phx::function< MakeVariableExpression > | qasm::MakeVariable |
| phx::function< MakeBinaryExpression > | qasm::MakeBinary |
| phx::function< MakeUnaryExpression > | qasm::MakeUnary |
| phx::function< MakeFunctionExpression > | qasm::MakeFunction |
Classes for the qasm parser and interpreter, expressions part.
It's supposed to support only open qasm 2.0.
Definition in file Expr.h.