public class org.apache.commons.math3.util.RandomPivotingStrategy implements org.apache.commons.math3.util.PivotingStrategyInterface, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.math3.util.RandomPivotingStrategy
  super_class: java.lang.Object
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 20140713

  private final org.apache.commons.math3.random.RandomGenerator random;
    descriptor: Lorg/apache/commons/math3/random/RandomGenerator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(org.apache.commons.math3.random.RandomGenerator);
    descriptor: (Lorg/apache/commons/math3/random/RandomGenerator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.math3.util.RandomPivotingStrategy this
        start local 1 // org.apache.commons.math3.random.RandomGenerator random
         0: .line 40
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 41
            aload 0 /* this */
            aload 1 /* random */
            putfield org.apache.commons.math3.util.RandomPivotingStrategy.random:Lorg/apache/commons/math3/random/RandomGenerator;
         2: .line 42
            return
        end local 1 // org.apache.commons.math3.random.RandomGenerator random
        end local 0 // org.apache.commons.math3.util.RandomPivotingStrategy this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/apache/commons/math3/util/RandomPivotingStrategy;
            0    3     1  random  Lorg/apache/commons/math3/random/RandomGenerator;
    MethodParameters:
        Name  Flags
      random  final

  public int pivotIndex(double[], int, int);
    descriptor: ([DII)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.apache.commons.math3.util.RandomPivotingStrategy this
        start local 1 // double[] work
        start local 2 // int begin
        start local 3 // int end
         0: .line 53
            aload 1 /* work */
            iload 2 /* begin */
            iload 3 /* end */
            iload 2 /* begin */
            isub
            invokestatic org.apache.commons.math3.util.MathArrays.verifyValues:([DII)Z
            pop
         1: .line 54
            iload 2 /* begin */
            aload 0 /* this */
            getfield org.apache.commons.math3.util.RandomPivotingStrategy.random:Lorg/apache/commons/math3/random/RandomGenerator;
            iload 3 /* end */
            iload 2 /* begin */
            isub
            iconst_1
            isub
            invokeinterface org.apache.commons.math3.random.RandomGenerator.nextInt:(I)I
            iadd
            ireturn
        end local 3 // int end
        end local 2 // int begin
        end local 1 // double[] work
        end local 0 // org.apache.commons.math3.util.RandomPivotingStrategy this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/apache/commons/math3/util/RandomPivotingStrategy;
            0    2     1   work  [D
            0    2     2  begin  I
            0    2     3    end  I
    Exceptions:
      throws org.apache.commons.math3.exception.MathIllegalArgumentException
    MethodParameters:
       Name  Flags
      work   final
      begin  final
      end    final
}
SourceFile: "RandomPivotingStrategy.java"