public interface com.google.inject.Binding<T> extends com.google.inject.spi.Element
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: com.google.inject.Binding
  super_class: java.lang.Object
{
  public abstract com.google.inject.Key<T> getKey();
    descriptor: ()Lcom/google/inject/Key;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lcom/google/inject/Key<TT;>;

  public abstract com.google.inject.Provider<T> getProvider();
    descriptor: ()Lcom/google/inject/Provider;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lcom/google/inject/Provider<TT;>;

  public abstract <V> V acceptTargetVisitor(com.google.inject.spi.BindingTargetVisitor<? super T, V>);
    descriptor: (Lcom/google/inject/spi/BindingTargetVisitor;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: <V:Ljava/lang/Object;>(Lcom/google/inject/spi/BindingTargetVisitor<-TT;TV;>;)TV;
    MethodParameters:
         Name  Flags
      visitor  

  public abstract <V> V acceptScopingVisitor(com.google.inject.spi.BindingScopingVisitor<V>);
    descriptor: (Lcom/google/inject/spi/BindingScopingVisitor;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: <V:Ljava/lang/Object;>(Lcom/google/inject/spi/BindingScopingVisitor<TV;>;)TV;
    MethodParameters:
         Name  Flags
      visitor  
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Lcom/google/inject/spi/Element;
SourceFile: "Binding.java"