Class TableSwitchBuilder

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

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

    • TableSwitchBuilder

      public TableSwitchBuilder(int low, int high)
      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.
      Parameters:
      low -
      high -
    • TableSwitchBuilder

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

    • add

      public AtomicReference<BranchEnd> add()
      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.
      Returns:
      A reference to the BranchEnd that will be created.
    • add

      public TableSwitchBuilder add(CodeLocation location)
      Adds a value to the table
    • getDefaultLocation

      public CodeLocation getDefaultLocation()
    • getDefaultBranchEnd

      public AtomicReference<BranchEnd> getDefaultBranchEnd()
    • getValues

      public List<TableSwitchBuilder.ValuePair> getValues()
    • getLow

      public int getLow()
    • getHigh

      public int getHigh()