Class ParameterAccessor.Parameter

java.lang.Object
com.ibm.wala.core.util.ssa.SSAValue
com.ibm.wala.core.util.ssa.ParameterAccessor.Parameter
Direct Known Subclasses:
ReuseParameters.ReuseParameter
Enclosing class:
ParameterAccessor

public static class ParameterAccessor.Parameter extends SSAValue
The representation of a Parameter handled using a ParameterAccessor.

It basically consists of a SSA-Value and an associated TypeReference.

Use .getNumber() to access the associated SSA-Value.

Since:
2013-10-19
Author:
Tobias Blaschke <code@tobiasblaschke.de>
  • Constructor Details

    • Parameter

      protected Parameter(int number, String name, TypeReference type, ParameterAccessor.ParameterDisposition disp, ParameterAccessor.BasedOn basedOn, MethodReference mRef, int descriptorOffset)
      Create Parameters using ParameterAccessor.
      Parameters:
      number - SSA-Value to access this parameter
      name - Optional variable-name - may be null
      type - Variable Type to this parameter
      disp - Implicit this, regular parameter or return value?
      basedOn - Is Accessor constructed with IMethod or MethodReference
      mRef - Method this parameter belongs to
      descriptorOffset - add to number to get position in descriptor
  • Method Details

    • getNumberInDescriptor

      public int getNumberInDescriptor()
      The position of the parameter in the methods Descriptor starting with 1.
    • getDisposition

      public ParameterAccessor.ParameterDisposition getDisposition()
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class SSAValue
      Throws:
      IllegalArgumentException - if you compare this to an object totally different.
    • hashCode

      public final int hashCode()
      Clashes deliberately with SSAValue as it's basically the same thing.
      Overrides:
      hashCode in class SSAValue
    • toString

      public String toString()
      Overrides:
      toString in class SSAValue