Interface IPrototypeItem

All Superinterfaces:
ICodeItem, ICodePrototype, ICodeType, INativeItem, INativeItemListenable, INativeType

@Ser public interface IPrototypeItem extends INativeType, ICodePrototype
A native prototype.

A prototype item contains return- and parameter types, calling convention, as well as other calling convention attributes.

Note: a reference-item to a prototype-item is a function-pointer type.

  • Method Details

    • getCountOfReturns

      int getCountOfReturns()
      Get the number of return values.
      Returns:
      return value count
    • getReturnType

      INativeType getReturnType()
      Get the primary return type.
      Specified by:
      getReturnType in interface ICodePrototype
      Returns:
      return type, or null
    • getReturnTypes

      List<? extends INativeType> getReturnTypes()
      Get all return types.
      Returns:
      return types
    • getCountOfParameters

      int getCountOfParameters()
      Get the number of parameters.
      Returns:
      parameter count
    • getParameterTypes

      List<? extends INativeType> getParameterTypes()
      Get parameter types.
      Specified by:
      getParameterTypes in interface ICodePrototype
      Returns:
      parameter types
    • getParameterNames

      List<String> getParameterNames()
      Get optional parameter names.
      Returns:
      optional parameter names, if they were provided with the prototype
    • getRoutineName

      String getRoutineName()
      Get the optional routine name.
      Returns:
      optional routine name, if it was provided with the prototype
    • getCallingConvention

      ICallingConvention getCallingConvention()
      Retrieve the optional calling convention associated with the prototype.
      Returns:
      calling convention, or null
    • getPrototypeAttributes

      Collection<PrototypeAttribute> getPrototypeAttributes()
      Retrieve the prototype attributes.
      Returns:
      prototype attributes, never null
    • isNoReturn

      boolean isNoReturn()
      Convenience method.
      Returns:
      true if the prototype is non-returning