Ghidra 11.3.2
Ghidra internal decompiler documentation.
|
Filter on a homogeneous aggregate data-type. More...
#include <modelrules.hh>
Public Member Functions | |
HomogeneousAggregate (type_metatype meta) | |
Constructor for use with decode() | |
HomogeneousAggregate (type_metatype meta, int4 maxPrim, int4 min, int4 max) | |
Constructor. | |
virtual DatatypeFilter * | clone (void) const |
Make a copy of this filter. | |
virtual bool | filter (Datatype *dt) const |
Test whether the given data-type belongs to this filter's data-type class. | |
![]() | |
SizeRestrictedFilter (void) | |
Constructor for use with decode() | |
SizeRestrictedFilter (int4 min, int4 max) | |
Constructor. | |
bool | filterOnSize (Datatype *dt) const |
Enforce any size bounds on a given data-type. | |
virtual void | decode (Decoder &decoder) |
Configure details of the data-type class being filtered from the given stream. | |
![]() | |
virtual | ~DatatypeFilter (void) |
Destructor. | |
Private Attributes | |
type_metatype | metaType |
The expected meta-type. | |
int4 | maxPrimitives |
Maximum number of primitives in the aggregate. | |
Additional Inherited Members | |
![]() | |
static DatatypeFilter * | decodeFilter (Decoder &decoder) |
Instantiate a filter from the given stream. | |
![]() | |
int4 | minSize |
Minimum size of the data-type in bytes. | |
int4 | maxSize |
Maximum size of the data-type in bytes. | |
Filter on a homogeneous aggregate data-type.
All primitive data-types must be the same.
|
inlinevirtual |
Make a copy of this filter.
Reimplemented from ghidra::SizeRestrictedFilter.
References maxPrimitives, ghidra::SizeRestrictedFilter::maxSize, metaType, and ghidra::SizeRestrictedFilter::minSize.
|
virtual |
Test whether the given data-type belongs to this filter's data-type class.
dt | is the given data-type to test |
Reimplemented from ghidra::SizeRestrictedFilter.
References ghidra::PrimitiveExtractor::containsHoles(), ghidra::PrimitiveExtractor::containsUnknown(), ghidra::PrimitiveExtractor::Primitive::dt, ghidra::PrimitiveExtractor::get(), ghidra::Datatype::getMetatype(), ghidra::PrimitiveExtractor::isAligned(), ghidra::PrimitiveExtractor::isValid(), metaType, ghidra::PrimitiveExtractor::size(), ghidra::TYPE_ARRAY, and ghidra::TYPE_STRUCT.