class com.google.common.cache.LocalCache$EntryFactory$4 extends com.google.common.cache.LocalCache$EntryFactory
  minor version: 0
  major version: 59
  flags: flags: (0x4020) ACC_SUPER, ACC_ANNOTATION
  this_class: com.google.common.cache.LocalCache$EntryFactory$4
  super_class: com.google.common.cache.LocalCache$EntryFactory
{
  void <init>(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.common.cache.LocalCache$EntryFactory$4 this
         0: .line 477
            aload 0 /* this */
            aload 1
            iload 2
            invokespecial com.google.common.cache.LocalCache$EntryFactory.<init>:(Ljava/lang/String;I)V
            return
        end local 0 // com.google.common.cache.LocalCache$EntryFactory$4 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/cache/LocalCache$EntryFactory$4;
    MethodParameters:
               Name  Flags
      $enum$name     
      $enum$ordinal  

  <K, V> com.google.common.cache.ReferenceEntry<K, V> newEntry(com.google.common.cache.LocalCache$Segment<K, V>, K, int, com.google.common.cache.ReferenceEntry<K, V>);
    descriptor: (Lcom/google/common/cache/LocalCache$Segment;Ljava/lang/Object;ILcom/google/common/cache/ReferenceEntry;)Lcom/google/common/cache/ReferenceEntry;
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // com.google.common.cache.LocalCache$EntryFactory$4 this
        start local 1 // com.google.common.cache.LocalCache$Segment segment
        start local 2 // java.lang.Object key
        start local 3 // int hash
        start local 4 // com.google.common.cache.ReferenceEntry next
         0: .line 481
            new com.google.common.cache.LocalCache$StrongAccessWriteEntry
            dup
            aload 2 /* key */
            iload 3 /* hash */
            aload 4 /* next */
            invokespecial com.google.common.cache.LocalCache$StrongAccessWriteEntry.<init>:(Ljava/lang/Object;ILcom/google/common/cache/ReferenceEntry;)V
            areturn
        end local 4 // com.google.common.cache.ReferenceEntry next
        end local 3 // int hash
        end local 2 // java.lang.Object key
        end local 1 // com.google.common.cache.LocalCache$Segment segment
        end local 0 // com.google.common.cache.LocalCache$EntryFactory$4 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lcom/google/common/cache/LocalCache$EntryFactory$4;
            0    1     1  segment  Lcom/google/common/cache/LocalCache$Segment<TK;TV;>;
            0    1     2      key  TK;
            0    1     3     hash  I
            0    1     4     next  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/cache/LocalCache$Segment<TK;TV;>;TK;ILcom/google/common/cache/ReferenceEntry<TK;TV;>;)Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
         Name  Flags
      segment  
      key      
      hash     
      next     

  <K, V> com.google.common.cache.ReferenceEntry<K, V> copyEntry(com.google.common.cache.LocalCache$Segment<K, V>, com.google.common.cache.ReferenceEntry<K, V>, com.google.common.cache.ReferenceEntry<K, V>);
    descriptor: (Lcom/google/common/cache/LocalCache$Segment;Lcom/google/common/cache/ReferenceEntry;Lcom/google/common/cache/ReferenceEntry;)Lcom/google/common/cache/ReferenceEntry;
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // com.google.common.cache.LocalCache$EntryFactory$4 this
        start local 1 // com.google.common.cache.LocalCache$Segment segment
        start local 2 // com.google.common.cache.ReferenceEntry original
        start local 3 // com.google.common.cache.ReferenceEntry newNext
         0: .line 487
            aload 0 /* this */
            aload 1 /* segment */
            aload 2 /* original */
            aload 3 /* newNext */
            invokespecial com.google.common.cache.LocalCache$EntryFactory.copyEntry:(Lcom/google/common/cache/LocalCache$Segment;Lcom/google/common/cache/ReferenceEntry;Lcom/google/common/cache/ReferenceEntry;)Lcom/google/common/cache/ReferenceEntry;
            astore 4 /* newEntry */
        start local 4 // com.google.common.cache.ReferenceEntry newEntry
         1: .line 488
            aload 0 /* this */
            aload 2 /* original */
            aload 4 /* newEntry */
            invokevirtual com.google.common.cache.LocalCache$EntryFactory$4.copyAccessEntry:(Lcom/google/common/cache/ReferenceEntry;Lcom/google/common/cache/ReferenceEntry;)V
         2: .line 489
            aload 0 /* this */
            aload 2 /* original */
            aload 4 /* newEntry */
            invokevirtual com.google.common.cache.LocalCache$EntryFactory$4.copyWriteEntry:(Lcom/google/common/cache/ReferenceEntry;Lcom/google/common/cache/ReferenceEntry;)V
         3: .line 490
            aload 4 /* newEntry */
            areturn
        end local 4 // com.google.common.cache.ReferenceEntry newEntry
        end local 3 // com.google.common.cache.ReferenceEntry newNext
        end local 2 // com.google.common.cache.ReferenceEntry original
        end local 1 // com.google.common.cache.LocalCache$Segment segment
        end local 0 // com.google.common.cache.LocalCache$EntryFactory$4 this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/google/common/cache/LocalCache$EntryFactory$4;
            0    4     1   segment  Lcom/google/common/cache/LocalCache$Segment<TK;TV;>;
            0    4     2  original  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            0    4     3   newNext  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            1    4     4  newEntry  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/cache/LocalCache$Segment<TK;TV;>;Lcom/google/common/cache/ReferenceEntry<TK;TV;>;Lcom/google/common/cache/ReferenceEntry<TK;TV;>;)Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
    MethodParameters:
          Name  Flags
      segment   
      original  
      newNext   
}
SourceFile: "LocalCache.java"
EnclosingMethod: com.google.common.cache.LocalCache$EntryFactory
NestHost: com.google.common.cache.LocalCache
InnerClasses:
  abstract EntryFactory = com.google.common.cache.LocalCache$EntryFactory of com.google.common.cache.LocalCache
  com.google.common.cache.LocalCache$EntryFactory$4
  Segment = com.google.common.cache.LocalCache$Segment of com.google.common.cache.LocalCache
  final StrongAccessWriteEntry = com.google.common.cache.LocalCache$StrongAccessWriteEntry of com.google.common.cache.LocalCache