libTriton version 1.0 build 1590
Loading...
Searching...
No Matches
Public Member Functions | List of all members
triton::ast::BvsmodNode Class Reference

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

#include <ast.hpp>

Inheritance diagram for triton::ast::BvsmodNode:

Public Member Functions

TRITON_EXPORT BvsmodNode (const SharedAbstractNode &expr1, const SharedAbstractNode &expr2)
 
TRITON_EXPORT void init (bool withParents=false)
 Init properties of the node. If withParents is true, init also properties of parents.
 
- Public Member Functions inherited from triton::ast::AbstractNode
TRITON_EXPORT AbstractNode (triton::ast::ast_e type, const SharedAstContext &ctxt)
 Constructor.
 
virtual TRITON_EXPORT ~AbstractNode ()
 Destructor.
 
TRITON_EXPORT SharedAstContext getContext (void) const
 Access to its context.
 
TRITON_EXPORT triton::ast::ast_e getType (void) const
 Returns the type 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 isArray (void) const
 Returns true if it's an array 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 hasSameConcreteValueAndTypeAs (const SharedAbstractNode &other) const
 Returns true if the node's concrete value and value type match those of the second one.
 
TRITON_EXPORT bool canReplaceNodeWithoutUpdate (const SharedAbstractNode &other) const
 Returns true if the node's value, value type and properties match those of the second one.
 
TRITON_EXPORT bool equalTo (const SharedAbstractNode &other) const
 Returns true if the current tree is equal to the second one.
 
TRITON_EXPORT triton::uint32 getLevel (void) const
 Returns the deep level of the tree.
 
TRITON_EXPORT triton::uint512 getHash (void) const
 Returns the hash of the tree.
 
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::unordered_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
triton::uint32 level
 Deep level for computing hash.
 
triton::ast::ast_e type
 The type of the node.
 
std::vector< SharedAbstractNodechildren
 The children of the node.
 
std::unordered_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.
 
triton::uint512 hash
 The hash of the tree.
 
bool symbolized
 True if the tree contains a symbolic variable.
 
bool logical
 True if it's a logical node.
 
bool array
 True if it's an array node.
 
SharedAstContext ctxt
 Contect use to create this node.
 

Detailed Description

(bvsmod <expr1> <expr2>) node

Definition at line 453 of file ast.hpp.

Constructor & Destructor Documentation

◆ BvsmodNode()

triton::ast::BvsmodNode::BvsmodNode ( const SharedAbstractNode expr1,
const SharedAbstractNode expr2 
)

Definition at line 1530 of file ast.cpp.

Member Function Documentation

◆ init()

void triton::ast::BvsmodNode::init ( bool  withParents = false)
virtual

Init properties of the node. If withParents is true, init also properties of parents.

Implements triton::ast::AbstractNode.

Definition at line 1536 of file ast.cpp.


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