Package ghidra.program.model.lang

# Class ParamListRegisterOut

java.lang.Object
ghidra.program.model.lang.ParamListStandard
ghidra.program.model.lang.ParamListStandardOut
ghidra.program.model.lang.ParamListRegisterOut

All Implemented Interfaces:
  `ParamList`

public class ParamListRegisterOut extends ParamListStandardOut
A list of resources describing possible storage locations for a function's return value, and a strategy for selecting a storage location based on data-types in a function signature. The assignment strategy for this class is to take the first storage location in the list that fits for the given function signature's return data-type.

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from interface ghidra.program.model.lang.ParamList

  `ParamList.WithSlotRec`

- ## Field Summary

  ### Fields inherited from class ghidra.program.model.lang.ParamListStandard

  `entry, modelRules, numgroup, spacebase, splitMetatype, thisbeforeret`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ParamListRegisterOut()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `assignMap(PrototypePieces proto, DataTypeManager dtManager, ArrayList<ParameterPieces> res, boolean addAutoParams)`
  Given a list of datatypes, calculate the storage locations used for passing those data-types

  ### Methods inherited from class ghidra.program.model.lang.ParamListStandard

  `assignAddress, assignAddressFallback, encode, getEntry, getNumParamEntry, getPotentialRegisterStorage, getSpacebase, getStackParameterAlignment, getStackParameterOffset, isEquivalent, isThisBeforeRetPointer, possibleParamWithSlot, restoreXml`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### ParamListRegisterOut

    public ParamListRegisterOut()

- ## Method Details

  - ### assignMap

    public void assignMap(PrototypePieces proto, DataTypeManager dtManager, ArrayList<ParameterPieces> res, boolean addAutoParams)
    Description copied from interface: `ParamList`
    Given a list of datatypes, calculate the storage locations used for passing those data-types
    Specified by:
      `assignMap` in interface `ParamList`
    Overrides:
      `assignMap` in class `ParamListStandardOut`
    Parameters:
      `proto` - is the list of datatypes
      `dtManager` - is the data-type manager
      `res` - is the vector for holding the storage locations and other parameter properties
      `addAutoParams` - if true add/process auto-parameters