Class LookupSwitchBuilder

java.lang.Object
org.jboss.classfilewriter.code.LookupSwitchBuilder

public class LookupSwitchBuilder extends Object
builder class used to build a lookupswitch statement.
Author:
Stuart Douglas
  • Constructor Details

    • LookupSwitchBuilder

      public LookupSwitchBuilder()
      Builds a lookup switch statement with no specified default location. When the lookup switch is added to the code attribute a BranchEnd will be returned that can be used to set the location.
    • LookupSwitchBuilder

      public LookupSwitchBuilder(CodeLocation defaultLocation)
      Builds a lookup switch statement, specifying the default location
      Parameters:
      defaultLocation - The default location
  • Method Details

    • add

      public AtomicReference<BranchEnd> add(int value)
      Adds a value to the table that is at a location yet to be written. After this lookup switch has been written then the BranchEnd can be retrieved from the returned reference.
      Parameters:
      value - The value to add to the lookup table
      Returns:
      A reference to the BranchEnd that will be created.
    • add

      public LookupSwitchBuilder add(int value, CodeLocation location)
      Adds a value to the table
      Parameters:
      value - The value to add to the lookup table
    • getDefaultLocation

      public CodeLocation getDefaultLocation()
    • getDefaultBranchEnd

      public AtomicReference<BranchEnd> getDefaultBranchEnd()
    • getValues

      public List<LookupSwitchBuilder.ValuePair> getValues()