# Package ghidra.program.model.lang.protorules

package ghidra.program.model.lang.protorules

- Related Packages
  Package
  Description
  ghidra.program.model.lang
- Class
  Description
  AndFilter
  Logically AND multiple QualifierFilters together into a single filter.
  AssignAction
  An action that assigns an Address to a function prototype parameter A request for the address of either return storage or an input parameter is made through the assignAddress() method, which is given full information about the function prototype.
  ConsumeAs
  Consume a parameter from a specific resource list Normally the resource list is determined by the parameter data-type, but this action specifies an overriding resource list.
  ConsumeExtra
  Consume additional registers from an alternate resource list This action is a side-effect and doesn't assign an address for the current parameter.
  ConvertToPointer
  Action converting the parameter's data-type to a pointer, and assigning storage for the pointer.
  DatatypeFilter
  A filter selecting a specific class of data-type.
  DatatypeMatchFilter
  Check if the function signature has a specific data-type in a specific position.
  GotoStack
  Action assigning a parameter Address from the next available stack location
  HiddenReturnAssign
  Allocate the return value as an input parameter A pointer to where the return value is to be stored is passed in as an input parameter.
  HomogeneousAggregate
  Filter on a homogeneous aggregate data-type All primitive data-types must be the same.
  MetaTypeFilter
  Filter on a single meta data-type.
  ModelRule
  A rule controlling how parameters are assigned addresses Rules are applied to a parameter in the context of a full function prototype.
  MultiMemberAssign
  Consume a register per primitive member of an aggregate data-type The data-type is split up into its underlying primitive elements, and each one is assigned a register from the specific resource list.
  MultiSlotAssign
  Consume multiple registers to pass a data-type Available registers are consumed until the data-type is covered, and an appropriate join space address is assigned.
  PositionMatchFilter
  Filter that selects for a particular parameter position.
  QualifierFilter
  A filter on some aspect of a specific function prototype.
  SizeRestrictedFilter
  A common base class for data-type filters that tests for a size range.
  VarargsFilter
  A filter that selects function parameters that are considered optional.