public final class android.companion.BluetoothLeDeviceFilter$Builder extends android.provider.OneTimeUseBuilder<android.companion.BluetoothLeDeviceFilter>
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: android.companion.BluetoothLeDeviceFilter$Builder
  super_class: android.provider.OneTimeUseBuilder
{
  private android.bluetooth.le.ScanFilter mScanFilter;
    descriptor: Landroid/bluetooth/le/ScanFilter;
    flags: (0x0002) ACC_PRIVATE

  private java.util.regex.Pattern mNamePattern;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x0002) ACC_PRIVATE

  private byte[] mRawDataFilter;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  private byte[] mRawDataFilterMask;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String mRenamePrefix;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String mRenameSuffix;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private int mRenameBytesFrom;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int mRenameBytesLength;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int mRenameNameFrom;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int mRenameNameLength;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean mRenameBytesReverseOrder;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
         0: .line 291
            aload 0 /* this */
            invokespecial android.provider.OneTimeUseBuilder.<init>:()V
         1: .line 298
            aload 0 /* this */
            iconst_m1
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameBytesFrom:I
         2: .line 300
            aload 0 /* this */
            iconst_m1
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameNameFrom:I
         3: .line 302
            aload 0 /* this */
            iconst_0
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameBytesReverseOrder:Z
         4: .line 291
            return
        end local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Landroid/companion/BluetoothLeDeviceFilter$Builder;

  public android.companion.BluetoothLeDeviceFilter$Builder setNamePattern(java.util.regex.Pattern);
    descriptor: (Ljava/util/regex/Pattern;)Landroid/companion/BluetoothLeDeviceFilter$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
        start local 1 // java.util.regex.Pattern regex
         0: .line 310
            aload 0 /* this */
            invokevirtual android.companion.BluetoothLeDeviceFilter$Builder.checkNotUsed:()V
         1: .line 311
            aload 0 /* this */
            aload 1 /* regex */
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mNamePattern:Ljava/util/regex/Pattern;
         2: .line 312
            aload 0 /* this */
            areturn
        end local 1 // java.util.regex.Pattern regex
        end local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Landroid/companion/BluetoothLeDeviceFilter$Builder;
            0    3     1  regex  Ljava/util/regex/Pattern;
    MethodParameters:
       Name  Flags
      regex  

  public android.companion.BluetoothLeDeviceFilter$Builder setScanFilter(android.bluetooth.le.ScanFilter);
    descriptor: (Landroid/bluetooth/le/ScanFilter;)Landroid/companion/BluetoothLeDeviceFilter$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
        start local 1 // android.bluetooth.le.ScanFilter scanFilter
         0: .line 323
            aload 0 /* this */
            invokevirtual android.companion.BluetoothLeDeviceFilter$Builder.checkNotUsed:()V
         1: .line 324
            aload 0 /* this */
            aload 1 /* scanFilter */
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mScanFilter:Landroid/bluetooth/le/ScanFilter;
         2: .line 325
            aload 0 /* this */
            areturn
        end local 1 // android.bluetooth.le.ScanFilter scanFilter
        end local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Landroid/companion/BluetoothLeDeviceFilter$Builder;
            0    3     1  scanFilter  Landroid/bluetooth/le/ScanFilter;
    MethodParameters:
            Name  Flags
      scanFilter  

  public android.companion.BluetoothLeDeviceFilter$Builder setRawDataFilter(byte[], byte[]);
    descriptor: ([B[B)Landroid/companion/BluetoothLeDeviceFilter$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
        start local 1 // byte[] rawDataFilter
        start local 2 // byte[] rawDataFilterMask
         0: .line 338
            aload 0 /* this */
            invokevirtual android.companion.BluetoothLeDeviceFilter$Builder.checkNotUsed:()V
         1: .line 339
            aload 1 /* rawDataFilter */
            invokestatic com.android.internal.util.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 340
            aload 2 /* rawDataFilterMask */
            ifnull 4
         3: .line 341
            aload 1 /* rawDataFilter */
            arraylength
            aload 2 /* rawDataFilterMask */
            arraylength
            if_icmpeq 4
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_1
         5: .line 342
      StackMap locals:
      StackMap stack: int
            ldc "Mask and filter should be the same length"
         6: .line 340
            invokestatic com.android.internal.util.Preconditions.checkArgument:(ZLjava/lang/Object;)V
         7: .line 343
            aload 0 /* this */
            aload 1 /* rawDataFilter */
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mRawDataFilter:[B
         8: .line 344
            aload 0 /* this */
            aload 2 /* rawDataFilterMask */
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mRawDataFilterMask:[B
         9: .line 345
            aload 0 /* this */
            areturn
        end local 2 // byte[] rawDataFilterMask
        end local 1 // byte[] rawDataFilter
        end local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   10     0               this  Landroid/companion/BluetoothLeDeviceFilter$Builder;
            0   10     1      rawDataFilter  [B
            0   10     2  rawDataFilterMask  [B
    MethodParameters:
                   Name  Flags
      rawDataFilter      
      rawDataFilterMask  

  public android.companion.BluetoothLeDeviceFilter$Builder setRenameFromBytes(java.lang.String, java.lang.String, int, int, java.nio.ByteOrder);
    descriptor: (Ljava/lang/String;Ljava/lang/String;IILjava/nio/ByteOrder;)Landroid/companion/BluetoothLeDeviceFilter$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
        start local 1 // java.lang.String prefix
        start local 2 // java.lang.String suffix
        start local 3 // int bytesFrom
        start local 4 // int bytesLength
        start local 5 // java.nio.ByteOrder byteOrder
         0: .line 369
            aload 0 /* this */
            invokevirtual android.companion.BluetoothLeDeviceFilter$Builder.checkRenameNotSet:()V
         1: .line 370
            aload 0 /* this */
            iload 4 /* bytesLength */
            invokevirtual android.companion.BluetoothLeDeviceFilter$Builder.checkRangeNotEmpty:(I)V
         2: .line 371
            aload 0 /* this */
            iload 3 /* bytesFrom */
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameBytesFrom:I
         3: .line 372
            aload 0 /* this */
            iload 4 /* bytesLength */
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameBytesLength:I
         4: .line 373
            aload 0 /* this */
            aload 5 /* byteOrder */
            getstatic java.nio.ByteOrder.LITTLE_ENDIAN:Ljava/nio/ByteOrder;
            if_acmpne 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack: android.companion.BluetoothLeDeviceFilter$Builder
         5: iconst_0
      StackMap locals: android.companion.BluetoothLeDeviceFilter$Builder java.lang.String java.lang.String int int java.nio.ByteOrder
      StackMap stack: android.companion.BluetoothLeDeviceFilter$Builder int
         6: putfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameBytesReverseOrder:Z
         7: .line 374
            aload 0 /* this */
            aload 1 /* prefix */
            aload 2 /* suffix */
            invokevirtual android.companion.BluetoothLeDeviceFilter$Builder.setRename:(Ljava/lang/String;Ljava/lang/String;)Landroid/companion/BluetoothLeDeviceFilter$Builder;
            areturn
        end local 5 // java.nio.ByteOrder byteOrder
        end local 4 // int bytesLength
        end local 3 // int bytesFrom
        end local 2 // java.lang.String suffix
        end local 1 // java.lang.String prefix
        end local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Landroid/companion/BluetoothLeDeviceFilter$Builder;
            0    8     1       prefix  Ljava/lang/String;
            0    8     2       suffix  Ljava/lang/String;
            0    8     3    bytesFrom  I
            0    8     4  bytesLength  I
            0    8     5    byteOrder  Ljava/nio/ByteOrder;
    MethodParameters:
             Name  Flags
      prefix       
      suffix       
      bytesFrom    
      bytesLength  
      byteOrder    

  public android.companion.BluetoothLeDeviceFilter$Builder setRenameFromName(java.lang.String, java.lang.String, int, int);
    descriptor: (Ljava/lang/String;Ljava/lang/String;II)Landroid/companion/BluetoothLeDeviceFilter$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
        start local 1 // java.lang.String prefix
        start local 2 // java.lang.String suffix
        start local 3 // int nameFrom
        start local 4 // int nameLength
         0: .line 395
            aload 0 /* this */
            invokevirtual android.companion.BluetoothLeDeviceFilter$Builder.checkRenameNotSet:()V
         1: .line 396
            aload 0 /* this */
            iload 4 /* nameLength */
            invokevirtual android.companion.BluetoothLeDeviceFilter$Builder.checkRangeNotEmpty:(I)V
         2: .line 397
            aload 0 /* this */
            iload 3 /* nameFrom */
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameNameFrom:I
         3: .line 398
            aload 0 /* this */
            iload 4 /* nameLength */
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameNameLength:I
         4: .line 399
            aload 0 /* this */
            iconst_0
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameBytesReverseOrder:Z
         5: .line 400
            aload 0 /* this */
            aload 1 /* prefix */
            aload 2 /* suffix */
            invokevirtual android.companion.BluetoothLeDeviceFilter$Builder.setRename:(Ljava/lang/String;Ljava/lang/String;)Landroid/companion/BluetoothLeDeviceFilter$Builder;
            areturn
        end local 4 // int nameLength
        end local 3 // int nameFrom
        end local 2 // java.lang.String suffix
        end local 1 // java.lang.String prefix
        end local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Landroid/companion/BluetoothLeDeviceFilter$Builder;
            0    6     1      prefix  Ljava/lang/String;
            0    6     2      suffix  Ljava/lang/String;
            0    6     3    nameFrom  I
            0    6     4  nameLength  I
    MethodParameters:
            Name  Flags
      prefix      
      suffix      
      nameFrom    
      nameLength  

  private void checkRenameNotSet();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
         0: .line 404
            aload 0 /* this */
            getfield android.companion.BluetoothLeDeviceFilter$Builder.mRenamePrefix:Ljava/lang/String;
            ifnonnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ldc "Renaming rule can only be set once"
            invokestatic com.android.internal.util.Preconditions.checkState:(ZLjava/lang/String;)V
         3: .line 405
            return
        end local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/companion/BluetoothLeDeviceFilter$Builder;

  private void checkRangeNotEmpty(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
        start local 1 // int length
         0: .line 408
            iload 1 /* length */
            ifle 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ldc "Range must be non-empty"
            invokestatic com.android.internal.util.Preconditions.checkArgument:(ZLjava/lang/Object;)V
         3: .line 409
            return
        end local 1 // int length
        end local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Landroid/companion/BluetoothLeDeviceFilter$Builder;
            0    4     1  length  I
    MethodParameters:
        Name  Flags
      length  

  private android.companion.BluetoothLeDeviceFilter$Builder setRename(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Landroid/companion/BluetoothLeDeviceFilter$Builder;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
        start local 1 // java.lang.String prefix
        start local 2 // java.lang.String suffix
         0: .line 413
            aload 0 /* this */
            invokevirtual android.companion.BluetoothLeDeviceFilter$Builder.checkNotUsed:()V
         1: .line 414
            aload 1 /* prefix */
            invokestatic android.text.TextUtils.length:(Ljava/lang/String;)I
            invokestatic android.companion.BluetoothLeDeviceFilter.getRenamePrefixLengthLimit:()I
            if_icmpgt 2
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
         3: .line 415
      StackMap locals:
      StackMap stack: int
            ldc "Prefix is too long"
         4: .line 414
            invokestatic com.android.internal.util.Preconditions.checkArgument:(ZLjava/lang/Object;)V
         5: .line 416
            aload 0 /* this */
            aload 1 /* prefix */
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mRenamePrefix:Ljava/lang/String;
         6: .line 417
            aload 0 /* this */
            aload 2 /* suffix */
            putfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameSuffix:Ljava/lang/String;
         7: .line 418
            aload 0 /* this */
            areturn
        end local 2 // java.lang.String suffix
        end local 1 // java.lang.String prefix
        end local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Landroid/companion/BluetoothLeDeviceFilter$Builder;
            0    8     1  prefix  Ljava/lang/String;
            0    8     2  suffix  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      prefix  
      suffix  

  public android.companion.BluetoothLeDeviceFilter build();
    descriptor: ()Landroid/companion/BluetoothLeDeviceFilter;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=13, locals=1, args_size=1
        start local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
         0: .line 425
            aload 0 /* this */
            invokevirtual android.companion.BluetoothLeDeviceFilter$Builder.markUsed:()V
         1: .line 426
            new android.companion.BluetoothLeDeviceFilter
            dup
            aload 0 /* this */
            getfield android.companion.BluetoothLeDeviceFilter$Builder.mNamePattern:Ljava/util/regex/Pattern;
            aload 0 /* this */
            getfield android.companion.BluetoothLeDeviceFilter$Builder.mScanFilter:Landroid/bluetooth/le/ScanFilter;
         2: .line 427
            aload 0 /* this */
            getfield android.companion.BluetoothLeDeviceFilter$Builder.mRawDataFilter:[B
            aload 0 /* this */
            getfield android.companion.BluetoothLeDeviceFilter$Builder.mRawDataFilterMask:[B
         3: .line 428
            aload 0 /* this */
            getfield android.companion.BluetoothLeDeviceFilter$Builder.mRenamePrefix:Ljava/lang/String;
            aload 0 /* this */
            getfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameSuffix:Ljava/lang/String;
         4: .line 429
            aload 0 /* this */
            getfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameBytesFrom:I
            aload 0 /* this */
            getfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameBytesLength:I
         5: .line 430
            aload 0 /* this */
            getfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameNameFrom:I
            aload 0 /* this */
            getfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameNameLength:I
         6: .line 431
            aload 0 /* this */
            getfield android.companion.BluetoothLeDeviceFilter$Builder.mRenameBytesReverseOrder:Z
         7: .line 426
            invokespecial android.companion.BluetoothLeDeviceFilter.<init>:(Ljava/util/regex/Pattern;Landroid/bluetooth/le/ScanFilter;[B[BLjava/lang/String;Ljava/lang/String;IIIIZ)V
            areturn
        end local 0 // android.companion.BluetoothLeDeviceFilter$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Landroid/companion/BluetoothLeDeviceFilter$Builder;

  public java.lang.Object build();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual android.companion.BluetoothLeDeviceFilter$Builder.build:()Landroid/companion/BluetoothLeDeviceFilter;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Landroid/provider/OneTimeUseBuilder<Landroid/companion/BluetoothLeDeviceFilter;>;
SourceFile: "BluetoothLeDeviceFilter.java"
NestHost: android.companion.BluetoothLeDeviceFilter
InnerClasses:
  public final Builder = android.companion.BluetoothLeDeviceFilter$Builder of android.companion.BluetoothLeDeviceFilter