8#ifndef TRITON_SYNTHESIZER_HPP
9#define TRITON_SYNTHESIZER_HPP
57 extern std::map<triton::ast::ast_e, std::array<UnaryEntry, 40>>
unopTable;
60 extern std::map<triton::ast::ast_e, std::array<BinaryEntry, 40>>
binopTable;
70 std::map<triton::uint512, triton::ast::SharedAbstractNode> hash2var;
73 std::map<triton::ast::SharedAbstractNode, triton::ast::SharedAbstractNode> var2expr;
This class is used to interface with solvers.
The symbolic engine class.
The SynthesisResult engine class.
The Synthesizer engine class.
TRITON_EXPORT SynthesisResult synthesize(const triton::ast::SharedAbstractNode &node, bool constant=true, bool subexpr=true, bool opaque=false)
Synthesizes a given node. If constant is true, perform a constant synthesis. If opaque is true,...
TRITON_EXPORT Synthesizer(triton::engines::symbolic::SymbolicEngine *symbolic)
Constructor.
std::shared_ptr< triton::ast::AbstractNode > SharedAbstractNode
Shared Abstract Node.
std::map< triton::ast::ast_e, std::array< UnaryEntry, 40 > > unopTable
The oracle table for unary operators. Each entry is a UnaryEntry object.
std::map< triton::ast::ast_e, std::array< BinaryEntry, 40 > > binopTable
The oracle table for binary operators. Each entry is a BinaryEntry object.