public final class com.google.common.base.Functions
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.google.common.base.Functions
  super_class: java.lang.Object
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.base.Functions this
         0: .line 40
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.google.common.base.Functions this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/base/Functions;

  public static com.google.common.base.Function<java.lang.Object, java.lang.String> toStringFunction();
    descriptor: ()Lcom/google/common/base/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 60
            getstatic com.google.common.base.Functions$ToStringFunction.INSTANCE:Lcom/google/common/base/Functions$ToStringFunction;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lcom/google/common/base/Function<Ljava/lang/Object;Ljava/lang/String;>;

  public static <E> com.google.common.base.Function<E, E> identity();
    descriptor: ()Lcom/google/common/base/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 83
            getstatic com.google.common.base.Functions$IdentityFunction.INSTANCE:Lcom/google/common/base/Functions$IdentityFunction;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <E:Ljava/lang/Object;>()Lcom/google/common/base/Function<TE;TE;>;

  public static <K, V> com.google.common.base.Function<K, V> forMap(java.util.Map<K, V>);
    descriptor: (Ljava/util/Map;)Lcom/google/common/base/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.Map map
         0: .line 115
            new com.google.common.base.Functions$FunctionForMapNoDefault
            dup
            aload 0 /* map */
            invokespecial com.google.common.base.Functions$FunctionForMapNoDefault.<init>:(Ljava/util/Map;)V
            areturn
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   map  Ljava/util/Map<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<TK;TV;>;)Lcom/google/common/base/Function<TK;TV;>;
    MethodParameters:
      Name  Flags
      map   

  public static <K, V> com.google.common.base.Function<K, V> forMap(java.util.Map<K, ? extends V>, V);
    descriptor: (Ljava/util/Map;Ljava/lang/Object;)Lcom/google/common/base/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Map map
        start local 1 // java.lang.Object defaultValue
         0: .line 132
            new com.google.common.base.Functions$ForMapWithDefault
            dup
            aload 0 /* map */
            aload 1 /* defaultValue */
            invokespecial com.google.common.base.Functions$ForMapWithDefault.<init>:(Ljava/util/Map;Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object defaultValue
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0           map  Ljava/util/Map<TK;+TV;>;
            0    1     1  defaultValue  TV;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<TK;+TV;>;TV;)Lcom/google/common/base/Function<TK;TV;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
              Name  Flags
      map           
      defaultValue  

  public static <A, B, C> com.google.common.base.Function<A, C> compose(com.google.common.base.Function<B, C>, com.google.common.base.Function<A, ? extends B>);
    descriptor: (Lcom/google/common/base/Function;Lcom/google/common/base/Function;)Lcom/google/common/base/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.google.common.base.Function g
        start local 1 // com.google.common.base.Function f
         0: .line 222
            new com.google.common.base.Functions$FunctionComposition
            dup
            aload 0 /* g */
            aload 1 /* f */
            invokespecial com.google.common.base.Functions$FunctionComposition.<init>:(Lcom/google/common/base/Function;Lcom/google/common/base/Function;)V
            areturn
        end local 1 // com.google.common.base.Function f
        end local 0 // com.google.common.base.Function g
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     g  Lcom/google/common/base/Function<TB;TC;>;
            0    1     1     f  Lcom/google/common/base/Function<TA;+TB;>;
    Signature: <A:Ljava/lang/Object;B:Ljava/lang/Object;C:Ljava/lang/Object;>(Lcom/google/common/base/Function<TB;TC;>;Lcom/google/common/base/Function<TA;+TB;>;)Lcom/google/common/base/Function<TA;TC;>;
    MethodParameters:
      Name  Flags
      g     
      f     

  public static <T> com.google.common.base.Function<T, java.lang.Boolean> forPredicate(com.google.common.base.Predicate<T>);
    descriptor: (Lcom/google/common/base/Predicate;)Lcom/google/common/base/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.base.Predicate predicate
         0: .line 271
            new com.google.common.base.Functions$PredicateFunction
            dup
            aload 0 /* predicate */
            invokespecial com.google.common.base.Functions$PredicateFunction.<init>:(Lcom/google/common/base/Predicate;)V
            areturn
        end local 0 // com.google.common.base.Predicate predicate
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  predicate  Lcom/google/common/base/Predicate<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lcom/google/common/base/Predicate<TT;>;)Lcom/google/common/base/Function<TT;Ljava/lang/Boolean;>;
    MethodParameters:
           Name  Flags
      predicate  

  public static <E> com.google.common.base.Function<java.lang.Object, E> constant(E);
    descriptor: (Ljava/lang/Object;)Lcom/google/common/base/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Object value
         0: .line 318
            new com.google.common.base.Functions$ConstantFunction
            dup
            aload 0 /* value */
            invokespecial com.google.common.base.Functions$ConstantFunction.<init>:(Ljava/lang/Object;)V
            areturn
        end local 0 // java.lang.Object value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  value  TE;
    Signature: <E:Ljava/lang/Object;>(TE;)Lcom/google/common/base/Function<Ljava/lang/Object;TE;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
       Name  Flags
      value  

  public static <T> com.google.common.base.Function<java.lang.Object, T> forSupplier(com.google.common.base.Supplier<T>);
    descriptor: (Lcom/google/common/base/Supplier;)Lcom/google/common/base/Function;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.base.Supplier supplier
         0: .line 363
            new com.google.common.base.Functions$SupplierFunction
            dup
            aload 0 /* supplier */
            invokespecial com.google.common.base.Functions$SupplierFunction.<init>:(Lcom/google/common/base/Supplier;)V
            areturn
        end local 0 // com.google.common.base.Supplier supplier
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  supplier  Lcom/google/common/base/Supplier<TT;>;
    Signature: <T:Ljava/lang/Object;>(Lcom/google/common/base/Supplier<TT;>;)Lcom/google/common/base/Function<Ljava/lang/Object;TT;>;
    MethodParameters:
          Name  Flags
      supplier  
}
SourceFile: "Functions.java"
NestMembers:
  com.google.common.base.Functions$ConstantFunction  com.google.common.base.Functions$ForMapWithDefault  com.google.common.base.Functions$FunctionComposition  com.google.common.base.Functions$FunctionForMapNoDefault  com.google.common.base.Functions$IdentityFunction  com.google.common.base.Functions$PredicateFunction  com.google.common.base.Functions$SupplierFunction  com.google.common.base.Functions$ToStringFunction
InnerClasses:
  private ConstantFunction = com.google.common.base.Functions$ConstantFunction of com.google.common.base.Functions
  private ForMapWithDefault = com.google.common.base.Functions$ForMapWithDefault of com.google.common.base.Functions
  private FunctionComposition = com.google.common.base.Functions$FunctionComposition of com.google.common.base.Functions
  private FunctionForMapNoDefault = com.google.common.base.Functions$FunctionForMapNoDefault of com.google.common.base.Functions
  private final IdentityFunction = com.google.common.base.Functions$IdentityFunction of com.google.common.base.Functions
  private PredicateFunction = com.google.common.base.Functions$PredicateFunction of com.google.common.base.Functions
  private SupplierFunction = com.google.common.base.Functions$SupplierFunction of com.google.common.base.Functions
  private final ToStringFunction = com.google.common.base.Functions$ToStringFunction of com.google.common.base.Functions
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtCompatible()