libTriton  version 0.6 build 1389
Public Member Functions | List of all members
triton::ast::BvsremNode Class Reference

(bvsrem <expr1> <expr2>) node More...

#include <ast.hpp>

Inheritance diagram for triton::ast::BvsremNode:

Public Member Functions

TRITON_EXPORT BvsremNode (const SharedAbstractNode &expr1, const SharedAbstractNode &expr2)
 
TRITON_EXPORT void init (void)
 Init stuffs like size and eval.
 
TRITON_EXPORT triton::uint512 hash (triton::uint32 deep) const
 Returns the has of the tree. The hash is computed recursively on the whole tree.
 
- Public Member Functions inherited from triton::ast::AbstractNode
TRITON_EXPORT AbstractNode (enum kind_e kind, AstContext &ctxt)
 Constructor.
 
TRITON_EXPORT AbstractNode (const AbstractNode &other, AstContext &ctxt)
 Constructor by copy.
 
virtual TRITON_EXPORT ~AbstractNode ()
 Destructor.
 
TRITON_EXPORT AstContextgetContext (void) const
 Access to its context.
 
TRITON_EXPORT enum kind_e getKind (void) const
 Returns the kind of the node.
 
TRITON_EXPORT triton::uint32 getBitvectorSize (void) const
 Returns the size of the node.
 
TRITON_EXPORT triton::uint512 getBitvectorMask (void) const
 Returns the vector mask according the size of the node.
 
TRITON_EXPORT bool isSigned (void) const
 According to the size of the expression, returns true if the MSB is 1.
 
TRITON_EXPORT bool isSymbolized (void) const
 Returns true if the tree contains a symbolic variable.
 
TRITON_EXPORT bool isLogical (void) const
 Returns true if it's a logical node.
 
TRITON_EXPORT bool equalTo (const SharedAbstractNode &) const
 Returns true if the current tree is equal to the second one.
 
virtual TRITON_EXPORT triton::uint512 evaluate (void) const
 Evaluates the tree.
 
void initParents (void)
 Initializes parents.
 
TRITON_EXPORT std::vector< SharedAbstractNode > & getChildren (void)
 Returns the children of the node.
 
TRITON_EXPORT std::vector< SharedAbstractNodegetParents (void)
 Returns the parents of node or an empty set if there is still no parent defined.
 
TRITON_EXPORT void removeParent (AbstractNode *p)
 Removes a parent node.
 
TRITON_EXPORT void setParent (AbstractNode *p)
 Sets a parent node.
 
TRITON_EXPORT void setParent (std::set< AbstractNode *> &p)
 Sets the parent nodes.
 
TRITON_EXPORT void setBitvectorSize (triton::uint32 size)
 Sets the size of the node.
 
TRITON_EXPORT void addChild (const SharedAbstractNode &child)
 Adds a child.
 
TRITON_EXPORT void setChild (triton::uint32 index, const SharedAbstractNode &child)
 Sets a child at an index.
 
TRITON_EXPORT std::string str (void) const
 Returns the string representation of the node.
 

Additional Inherited Members

- Protected Attributes inherited from triton::ast::AbstractNode
enum kind_e kind
 The kind of the node.
 
std::vector< SharedAbstractNodechildren
 The children of the node.
 
std::map< AbstractNode *, std::pair< triton::uint32, WeakAbstractNode > > parents
 
triton::uint32 size
 The size of the node.
 
triton::uint512 eval
 The value of the tree from this root node.
 
bool symbolized
 True if the tree contains a symbolic variable.
 
bool logical
 True if it's a logical node.
 
AstContextctxt
 Contect use to create this node.
 

Detailed Description

(bvsrem <expr1> <expr2>) node

Definition at line 348 of file ast.hpp.


The documentation for this class was generated from the following files: