![]() |
libsesstype
2.0.0
Library for Session Types programming.
|
Expressions in a Role parameter or statement. More...
#include <ostream>
#include <string>
#include <vector>
#include "sesstype/util/clonable.h"
Go to the source code of this file.
Classes | |
class | sesstype::parameterised::Expr |
Expression. More... | |
class | sesstype::parameterised::BinExpr |
Binary expression (Abstract). More... | |
Namespaces | |
namespace | sesstype |
namespace for Session Types. | |
Defines | |
#define | ST_EXPR_CONST 1 |
#define | ST_EXPR_VAR 2 |
#define | ST_EXPR_ADD 3 |
#define | ST_EXPR_SUB 4 |
#define | ST_EXPR_MUL 5 |
#define | ST_EXPR_DIV 6 |
#define | ST_EXPR_MOD 7 |
#define | ST_EXPR_SHL 8 |
#define | ST_EXPR_SHR 9 |
#define | ST_EXPR_SEQ 10 |
#define | ST_EXPR_RNG 11 |
#define | ST_EXPR_LOG 12 |
Typedefs | |
typedef Expr | sesstype::parameterised::st_expr |
typedef BinExpr | sesstype::parameterised::st_bin_expr |
Functions | |
st_expr * | sesstype::parameterised::st_expr_mk_const (int num) |
Constructor for value expression. | |
st_expr * | sesstype::parameterised::st_expr_mk_var (const char *var) |
Constructor for variable expression. | |
st_expr * | sesstype::parameterised::st_expr_mk_binary (st_expr *lhs, int type, st_expr *rhs) |
Constructor for binary expression. | |
st_expr * | sesstype::parameterised::st_expr_copy (const st_expr *e) |
Deep copy an expression. | |
bool | sesstype::parameterised::st_expr_is_identical (st_expr *e0, st_expr *e1) |
Test if two expressions are identical. | |
st_expr * | sesstype::parameterised::st_expr_eval (st_expr *const e) |
Evaluate an expression. | |
st_expr * | sesstype::parameterised::st_expr_apply (const st_expr *b, const st_expr *e) |
Apply a relative expression on a binding range. | |
st_expr * | sesstype::parameterised::st_expr_inv (const st_expr *e) |
Invert an expression. | |
void | sesstype::parameterised::st_expr_free (st_expr *e) |
Free an exprssion. |
Expressions in a Role parameter or statement.