P4C
The P4 Compiler
Loading...
Searching...
No Matches
variables.h
1#ifndef BACKENDS_P4TOOLS_COMMON_LIB_VARIABLES_H_
2#define BACKENDS_P4TOOLS_COMMON_LIB_VARIABLES_H_
3
4#include "ir/ir.h"
5#include "lib/cstring.h"
6
10namespace P4::P4Tools {
11
12using namespace P4::literals;
13
17using ConstraintsVector = std::vector<const IR::Expression *>;
18
19namespace ToolsVariables {
20
24static const cstring VALID = "*valid"_cs;
25
30const IR::StateVariable &getStateVariable(const IR::Type *type, cstring name);
31
36const IR::SymbolicVariable *getSymbolicVariable(const IR::Type *type, cstring name);
37
41const IR::TaintExpression *getTaintExpression(const IR::Type *type);
42
47IR::StateVariable getHeaderValidity(const IR::Expression *headerRef);
48
51IR::StateVariable convertReference(const IR::Expression *ref);
52
53} // namespace ToolsVariables
54
55} // namespace P4::P4Tools
56
57#endif /* BACKENDS_P4TOOLS_COMMON_LIB_VARIABLES_H_ */
Definition cstring.h:85
Definition common/compiler/compiler_result.cpp:3
std::vector< const IR::Expression * > ConstraintsVector
Definition variables.h:17
Definition cstring.h:80