libTriton version 1.0 build 1592
Loading...
Searching...
No Matches
Classes | Namespaces | Macros | Functions | Variables
pythonObjects.hpp File Reference
#include <triton/pythonBindings.hpp>
#include <triton/archEnums.hpp>
#include <triton/ast.hpp>
#include <triton/basicBlock.hpp>
#include <triton/bitsVector.hpp>
#include <triton/immediate.hpp>
#include <triton/instruction.hpp>
#include <triton/memoryAccess.hpp>
#include <triton/pathConstraint.hpp>
#include <triton/register.hpp>
#include <triton/solverModel.hpp>
#include <triton/symbolicExpression.hpp>
#include <triton/symbolicVariable.hpp>
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  triton::bindings::python::AstNode_Object
 pyAstNode object. More...
 
struct  triton::bindings::python::BitsVector_Object
 pyBitsVector object. More...
 
struct  triton::bindings::python::BasicBlock_Object
 pyBasicBlock object. More...
 
struct  triton::bindings::python::Immediate_Object
 pyImmediate object. More...
 
struct  triton::bindings::python::Instruction_Object
 pyInstruction object. More...
 
struct  triton::bindings::python::MemoryAccess_Object
 pyMemory object. More...
 
struct  triton::bindings::python::PathConstraint_Object
 pyPathConstraint object. More...
 
struct  triton::bindings::python::Register_Object
 pyRegister object. More...
 
struct  triton::bindings::python::TritonContext_Object
 pyTritonContext object. More...
 
struct  triton::bindings::python::AstContext_Object
 pyAstContext object. More...
 
struct  triton::bindings::python::SolverModel_Object
 pySolverModel object. More...
 
struct  triton::bindings::python::SymbolicExpression_Object
 pySymbolicExpression object. More...
 
struct  triton::bindings::python::SymbolicVariable_Object
 pySymbolicVariable object. More...
 

Namespaces

namespace  triton
 The Triton namespace.
 
namespace  triton::bindings
 The Bindings namespace.
 
namespace  triton::bindings::python
 The Python namespace.
 

Macros

#define PyAstNode_AsAstNode(v)   (((triton::bindings::python::AstNode_Object*)(v))->node)
 
#define PyBitsVector_Check(v)   ((v)->ob_type == &triton::bindings::python::BitsVector_Type)
 
#define PyBitsVector_AsBitsVector(v)   (((triton::bindings::python::BitsVector_Object*)(v))->bv)
 
#define PyBasicBlock_Check(v)   ((v)->ob_type == &triton::bindings::python::BasicBlock_Type)
 
#define PyBasicBlock_AsBasicBlock(v)   (((triton::bindings::python::BasicBlock_Object*)(v))->block)
 
#define PyImmediate_Check(v)   ((v)->ob_type == &triton::bindings::python::Immediate_Type)
 
#define PyImmediate_AsImmediate(v)   (((triton::bindings::python::Immediate_Object*)(v))->imm)
 
#define PyInstruction_Check(v)   ((v)->ob_type == &triton::bindings::python::Instruction_Type)
 
#define PyInstruction_AsInstruction(v)   (((triton::bindings::python::Instruction_Object*)(v))->inst)
 
#define PyMemoryAccess_Check(v)   ((v)->ob_type == &triton::bindings::python::MemoryAccess_Type)
 
#define PyMemoryAccess_AsMemoryAccess(v)   (((triton::bindings::python::MemoryAccess_Object*)(v))->mem)
 
#define PyPathConstraint_Check(v)   ((v)->ob_type == &triton::bindings::python::PathConstraint_Type)
 
#define PyPathConstraint_AsPathConstraint(v)   (((triton::bindings::python::PathConstraint_Object*)(v))->pc)
 
#define PyTritonContext_Check(v)   ((v)->ob_type == &triton::bindings::python::TritonContext_Type)
 
#define PyTritonContext_AsTritonContext(v)   (((triton::bindings::python::TritonContext_Object*)(v))->ctx)
 
#define PyAstContext_Check(v)   ((v)->ob_type == &triton::bindings::python::AstContext_Type)
 
#define PyAstContext_AsAstContext(v)   (((triton::bindings::python::AstContext_Object*)(v))->actx)
 
#define PyRegister_Check(v)   ((v)->ob_type == &triton::bindings::python::Register_Type)
 
#define PyRegister_AsRegister(v)   (((triton::bindings::python::Register_Object*)(v))->reg)
 
#define PySolverModel_Check(v)   ((v)->ob_type == &triton::bindings::python::SolverModel_Type)
 
#define PySolverModel_AsSolverModel(v)   (((triton::bindings::python::SolverModel_Object*)(v))->model)
 
#define PyAstNode_Check(v)   ((v)->ob_type == &triton::bindings::python::AstNode_Type)
 
#define PySymbolicExpression_Check(v)   ((v)->ob_type == &triton::bindings::python::SymbolicExpression_Type)
 
#define PySymbolicExpression_AsSymbolicExpression(v)   (((triton::bindings::python::SymbolicExpression_Object*)(v))->symExpr)
 
#define PySymbolicVariable_Check(v)   ((v)->ob_type == &triton::bindings::python::SymbolicVariable_Type)
 
#define PySymbolicVariable_AsSymbolicVariable(v)   (((triton::bindings::python::SymbolicVariable_Object*)(v))->symVar)
 

Functions

PyObject * triton::bindings::python::PyAstNode (const triton::ast::SharedAbstractNode &node)
 Creates the AstNode python class.
 
template<typename T >
PyObject * triton::bindings::python::PyBitsVector (const T &op)
 Creates the BitsVector python class.
 
PyObject * triton::bindings::python::PyImmediate (const triton::arch::Immediate &imm)
 Creates the Immediate python class.
 
PyObject * triton::bindings::python::PyBasicBlock (void)
 Creates the BasicBlock python class.
 
PyObject * triton::bindings::python::PyBasicBlock (const triton::arch::BasicBlock &block)
 Creates the BasicBlock python class.
 
PyObject * triton::bindings::python::PyBasicBlock (std::vector< triton::arch::Instruction > &insts)
 Creates the BasicBlock python class.
 
PyObject * triton::bindings::python::PyInstruction (void)
 Creates the Instruction python class.
 
PyObject * triton::bindings::python::PyInstruction (const triton::arch::Instruction &inst)
 Creates the Instruction python class.
 
PyObject * triton::bindings::python::PyInstruction (const void *opcodes, triton::uint32 opSize)
 Creates the Instruction python class.
 
PyObject * triton::bindings::python::PyInstruction (triton::uint64 addr, const void *opcodes, triton::uint32 opSize)
 Creates the Instruction python class.
 
PyObject * triton::bindings::python::PyMemoryAccess (const triton::arch::MemoryAccess &mem)
 Creates the Memory python class.
 
PyObject * triton::bindings::python::PyPathConstraint (const triton::engines::symbolic::PathConstraint &pc)
 Creates the PathConstraint python class.
 
PyObject * triton::bindings::python::PyTritonContext (void)
 Creates the new TritonContext python class.
 
PyObject * triton::bindings::python::PyTritonContext (triton::arch::architecture_e arch)
 Creates the new TritonContext python class.
 
PyObject * triton::bindings::python::PyTritonContextRef (triton::Context &ctx)
 Creates a TritonContext python class which is a reference to another Context.
 
PyObject * triton::bindings::python::PyAstContext (const triton::ast::SharedAstContext &actx)
 Creates an AstContext python class.
 
PyObject * triton::bindings::python::PyRegister (const triton::arch::Register &reg)
 Creates the Register python class.
 
PyObject * triton::bindings::python::PySolverModel (const triton::engines::solver::SolverModel &model)
 Creates the SolverModel python class.
 
PyObject * triton::bindings::python::PySymbolicExpression (const triton::engines::symbolic::SharedSymbolicExpression &expr)
 Creates the SymbolicExpression python class.
 
PyObject * triton::bindings::python::PySymbolicVariable (const triton::engines::symbolic::SharedSymbolicVariable &symVar)
 Creates the SymbolicVariable python class.
 

Variables

PyTypeObject triton::bindings::python::TritonContextObject_Type
 pyRegister type.
 
PyTypeObject triton::bindings::python::AstContextObject_Type
 pyRegister type.
 

Macro Definition Documentation

◆ PyAstContext_AsAstContext

#define PyAstContext_AsAstContext ( v)    (((triton::bindings::python::AstContext_Object*)(v))->actx)

Returns the triton::arch::AstContext.

Definition at line 316 of file pythonObjects.hpp.

◆ PyAstContext_Check

#define PyAstContext_Check ( v)    ((v)->ob_type == &triton::bindings::python::AstContext_Type)

Checks if the pyObject is a triton::arch::AstContext.

Definition at line 313 of file pythonObjects.hpp.

◆ PyAstNode_AsAstNode

#define PyAstNode_AsAstNode ( v)    (((triton::bindings::python::AstNode_Object*)(v))->node)

Returns the triton::ast::SharedAbstractNode.

Definition at line 268 of file pythonObjects.hpp.

◆ PyAstNode_Check

#define PyAstNode_Check ( v)    ((v)->ob_type == &triton::bindings::python::AstNode_Type)

Checks if the pyObject is a triton::ast::AbstractNode.

Definition at line 331 of file pythonObjects.hpp.

◆ PyBasicBlock_AsBasicBlock

#define PyBasicBlock_AsBasicBlock ( v)    (((triton::bindings::python::BasicBlock_Object*)(v))->block)

Returns the triton::arch::BasicBlock.

Definition at line 280 of file pythonObjects.hpp.

◆ PyBasicBlock_Check

#define PyBasicBlock_Check ( v)    ((v)->ob_type == &triton::bindings::python::BasicBlock_Type)

Checks if the pyObject is a triton::arch::BasicBlock.

Definition at line 277 of file pythonObjects.hpp.

◆ PyBitsVector_AsBitsVector

#define PyBitsVector_AsBitsVector ( v)    (((triton::bindings::python::BitsVector_Object*)(v))->bv)

Returns the triton::arch::BitsVector.

Definition at line 274 of file pythonObjects.hpp.

◆ PyBitsVector_Check

#define PyBitsVector_Check ( v)    ((v)->ob_type == &triton::bindings::python::BitsVector_Type)

Checks if the pyObject is a triton::arch::BitsVector.

Definition at line 271 of file pythonObjects.hpp.

◆ PyImmediate_AsImmediate

#define PyImmediate_AsImmediate ( v)    (((triton::bindings::python::Immediate_Object*)(v))->imm)

Returns the triton::arch::Immediate.

Definition at line 286 of file pythonObjects.hpp.

◆ PyImmediate_Check

#define PyImmediate_Check ( v)    ((v)->ob_type == &triton::bindings::python::Immediate_Type)

Checks if the pyObject is a triton::arch::Immediate.

Definition at line 283 of file pythonObjects.hpp.

◆ PyInstruction_AsInstruction

#define PyInstruction_AsInstruction ( v)    (((triton::bindings::python::Instruction_Object*)(v))->inst)

Returns the triton::arch::Instruction.

Definition at line 292 of file pythonObjects.hpp.

◆ PyInstruction_Check

#define PyInstruction_Check ( v)    ((v)->ob_type == &triton::bindings::python::Instruction_Type)

Checks if the pyObject is a triton::arch::Instruction.

Definition at line 289 of file pythonObjects.hpp.

◆ PyMemoryAccess_AsMemoryAccess

#define PyMemoryAccess_AsMemoryAccess ( v)    (((triton::bindings::python::MemoryAccess_Object*)(v))->mem)

Returns the triton::arch::MemoryAccess.

Definition at line 298 of file pythonObjects.hpp.

◆ PyMemoryAccess_Check

#define PyMemoryAccess_Check ( v)    ((v)->ob_type == &triton::bindings::python::MemoryAccess_Type)

Checks if the pyObject is a triton::arch::MemoryAccess.

Definition at line 295 of file pythonObjects.hpp.

◆ PyPathConstraint_AsPathConstraint

#define PyPathConstraint_AsPathConstraint ( v)    (((triton::bindings::python::PathConstraint_Object*)(v))->pc)

Returns the triton::engines::symbolic::PathConstraint.

Definition at line 304 of file pythonObjects.hpp.

◆ PyPathConstraint_Check

#define PyPathConstraint_Check ( v)    ((v)->ob_type == &triton::bindings::python::PathConstraint_Type)

Checks if the pyObject is a triton::engines::symbolic::PathConstraint.

Definition at line 301 of file pythonObjects.hpp.

◆ PyRegister_AsRegister

#define PyRegister_AsRegister ( v)    (((triton::bindings::python::Register_Object*)(v))->reg)

Returns the triton::arch::Register.

Definition at line 322 of file pythonObjects.hpp.

◆ PyRegister_Check

#define PyRegister_Check ( v)    ((v)->ob_type == &triton::bindings::python::Register_Type)

Checks if the pyObject is a triton::arch::Register.

Definition at line 319 of file pythonObjects.hpp.

◆ PySolverModel_AsSolverModel

#define PySolverModel_AsSolverModel ( v)    (((triton::bindings::python::SolverModel_Object*)(v))->model)

Returns the triton::engines::solver::SolverModel.

Definition at line 328 of file pythonObjects.hpp.

◆ PySolverModel_Check

#define PySolverModel_Check ( v)    ((v)->ob_type == &triton::bindings::python::SolverModel_Type)

Checks if the pyObject is a triton::engines::solver::SolverModel.

Definition at line 325 of file pythonObjects.hpp.

◆ PySymbolicExpression_AsSymbolicExpression

#define PySymbolicExpression_AsSymbolicExpression ( v)    (((triton::bindings::python::SymbolicExpression_Object*)(v))->symExpr)

Returns the triton::engines::symbolic::SymbolicExpression.

Definition at line 337 of file pythonObjects.hpp.

◆ PySymbolicExpression_Check

#define PySymbolicExpression_Check ( v)    ((v)->ob_type == &triton::bindings::python::SymbolicExpression_Type)

Checks if the pyObject is a triton::engines::symbolic::SymbolicExpression.

Definition at line 334 of file pythonObjects.hpp.

◆ PySymbolicVariable_AsSymbolicVariable

#define PySymbolicVariable_AsSymbolicVariable ( v)    (((triton::bindings::python::SymbolicVariable_Object*)(v))->symVar)

Returns the triton::engines::symbolic::SymbolicVariable.

Definition at line 343 of file pythonObjects.hpp.

◆ PySymbolicVariable_Check

#define PySymbolicVariable_Check ( v)    ((v)->ob_type == &triton::bindings::python::SymbolicVariable_Type)

Checks if the pyObject is a triton::engines::symbolic::SymbolicVariable.

Definition at line 340 of file pythonObjects.hpp.

◆ PyTritonContext_AsTritonContext

#define PyTritonContext_AsTritonContext ( v)    (((triton::bindings::python::TritonContext_Object*)(v))->ctx)

Returns the triton::arch::TritonContext.

Definition at line 310 of file pythonObjects.hpp.

◆ PyTritonContext_Check

#define PyTritonContext_Check ( v)    ((v)->ob_type == &triton::bindings::python::TritonContext_Type)

Checks if the pyObject is a triton::arch::TritonContext.

Definition at line 307 of file pythonObjects.hpp.