Ghidra 11.3.2
Ghidra internal decompiler documentation.
Loading...
Searching...
No Matches
ghidra::VarnodeSignature Class Reference

A feature representing a portion of the data-flow graph rooted at a particular Varnode. More...

#include <signature.hh>

Inheritance diagram for ghidra::VarnodeSignature:
[legend]
Collaboration diagram for ghidra::VarnodeSignature:
[legend]

Public Member Functions

 VarnodeSignature (const Varnode *v, hashword h)
 Constructor.
 
virtual void encode (Encoder &encoder) const
 
virtual void printOrigin (ostream &s) const
 Restore this feature from the given stream.
 
- Public Member Functions inherited from ghidra::Signature
 Signature (hashword h)
 Constructor.
 
uint4 getHash (void) const
 Get the underyling 32-bit hash of the feature.
 
void print (ostream &s) const
 Print the feature hash and a brief description of this feature to the given stream.
 
int4 compare (const Signature *op2) const
 Compare two features.
 
virtual ~Signature (void)
 Destructor.
 
virtual void decode (Decoder &decoder)
 Encode this feature to the given stream.
 

Private Attributes

const Varnodevn
 The root Varnode.
 

Additional Inherited Members

- Static Public Member Functions inherited from ghidra::Signature
static bool comparePtr (Signature *a, Signature *b)
 Compare two Signature pointers via their underlying hash values.
 

Detailed Description

A feature representing a portion of the data-flow graph rooted at a particular Varnode.

The feature recursively incorporates details about the Varnode, the PcodeOp that defined it and its input Varnodes, up to a specific depth.

Member Function Documentation

◆ encode()

void ghidra::VarnodeSignature::encode ( Encoder encoder) const
virtual

The hash value is encoded to the stream, along with any descriptive information about how the feature was formed.

Parameters
encoderis the stream encoder

Reimplemented from ghidra::Signature.

References ghidra::Encoder::closeElement(), ghidra::PcodeOp::encode(), ghidra::Varnode::encode(), ghidra::Varnode::getDef(), ghidra::Signature::getHash(), ghidra::Varnode::isWritten(), ghidra::Encoder::openElement(), vn, and ghidra::Encoder::writeUnsignedInteger().

◆ printOrigin()

virtual void ghidra::VarnodeSignature::printOrigin ( ostream &  s) const
inlinevirtual

Restore this feature from the given stream.

Print a brief description of this feature to the given stream

Reimplemented from ghidra::Signature.

References ghidra::Varnode::printRaw(), and vn.


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