public interface io.netty.util.Attribute<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: io.netty.util.Attribute
  super_class: java.lang.Object
{
  public abstract io.netty.util.AttributeKey<T> key();
    descriptor: ()Lio/netty/util/AttributeKey;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lio/netty/util/AttributeKey<TT;>;

  public abstract T get();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()TT;

  public abstract void set();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (TT;)V
    MethodParameters:
       Name  Flags
      value  

  public abstract T getAndSet();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (TT;)TT;
    MethodParameters:
       Name  Flags
      value  

  public abstract T setIfAbsent();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (TT;)TT;
    MethodParameters:
       Name  Flags
      value  

  public abstract T getAndRemove();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()TT;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public abstract boolean compareAndSet(T, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (TT;TT;)Z
    MethodParameters:
          Name  Flags
      oldValue  
      newValue  

  public abstract void remove();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "Attribute.java"