Package ghidra.pcode.struct

# Class DefaultUseropDecl

java.lang.Object
ghidra.pcode.struct.DefaultUseropDecl

All Implemented Interfaces:
  `StructuredSleigh.UseropDecl`

public class DefaultUseropDecl extends Object implements StructuredSleigh.UseropDecl

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DefaultUseropDecl(StructuredSleigh ctx, DataType retType, String name, List<DataType> paramTypes)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `StructuredSleigh.StmtWithVal`
  `call(StructuredSleigh.RVal... args)`
  Generate an invocation of the userop
  `String`
  `getName()`
  Get the name of the userop
  `List<DataType>`
  `getParameterTypes()`
  Get the parameter types of the userop
  `DataType`
  `getReturnType()`
  Get the userop's return type

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

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

- ## Constructor Details

  - ### DefaultUseropDecl

    public DefaultUseropDecl(StructuredSleigh ctx, DataType retType, String name, List<DataType> paramTypes)

- ## Method Details

  - ### getReturnType

    public DataType getReturnType()
    Description copied from interface: `StructuredSleigh.UseropDecl`
    Get the userop's return type
    Specified by:
      `getReturnType` in interface `StructuredSleigh.UseropDecl`
    Returns:
      the return type

  - ### getName

    public String getName()
    Description copied from interface: `StructuredSleigh.UseropDecl`
    Get the name of the userop
    Specified by:
      `getName` in interface `StructuredSleigh.UseropDecl`
    Returns:
      the name

  - ### getParameterTypes

    public List<DataType> getParameterTypes()
    Description copied from interface: `StructuredSleigh.UseropDecl`
    Get the parameter types of the userop
    Specified by:
      `getParameterTypes` in interface `StructuredSleigh.UseropDecl`
    Returns:
      the types, in order of parameters

  - ### call

    public StructuredSleigh.StmtWithVal call(StructuredSleigh.RVal... args)
    Description copied from interface: `StructuredSleigh.UseropDecl`
    Generate an invocation of the userop

    If the userop has a result type, then the resulting statement will also have a value. If the user has a `void` result type, the "value" should not be used. Otherwise, a warning will likely be generated, and the "result value" will be undefined.

    Specified by:
      `call` in interface `StructuredSleigh.UseropDecl`
    Parameters:
      `args` - the arguments to pass
    Returns:
      a handle to the statement