public final class freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision
  super_class: java.lang.Object
{
  private java.beans.PropertyDescriptor exposeAsProperty;
    descriptor: Ljava/beans/PropertyDescriptor;
    flags: (0x0002) ACC_PRIVATE

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

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

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

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
         0: .line 1767
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lfreemarker/ext/beans/BeansWrapper$MethodAppearanceDecision;

  void setDefaults(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
        start local 1 // java.lang.reflect.Method m
         0: .line 1774
            aload 0 /* this */
            aconst_null
            putfield freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision.exposeAsProperty:Ljava/beans/PropertyDescriptor;
         1: .line 1775
            aload 0 /* this */
            iconst_0
            putfield freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision.replaceExistingProperty:Z
         2: .line 1776
            aload 0 /* this */
            aload 1 /* m */
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            putfield freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision.exposeMethodAs:Ljava/lang/String;
         3: .line 1777
            aload 0 /* this */
            iconst_1
            putfield freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision.methodShadowsProperty:Z
         4: .line 1778
            return
        end local 1 // java.lang.reflect.Method m
        end local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lfreemarker/ext/beans/BeansWrapper$MethodAppearanceDecision;
            0    5     1     m  Ljava/lang/reflect/Method;
    MethodParameters:
      Name  Flags
      m     

  public java.beans.PropertyDescriptor getExposeAsProperty();
    descriptor: ()Ljava/beans/PropertyDescriptor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
         0: .line 1784
            aload 0 /* this */
            getfield freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision.exposeAsProperty:Ljava/beans/PropertyDescriptor;
            areturn
        end local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lfreemarker/ext/beans/BeansWrapper$MethodAppearanceDecision;

  public void setExposeAsProperty(java.beans.PropertyDescriptor);
    descriptor: (Ljava/beans/PropertyDescriptor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
        start local 1 // java.beans.PropertyDescriptor exposeAsProperty
         0: .line 1793
            aload 0 /* this */
            aload 1 /* exposeAsProperty */
            putfield freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision.exposeAsProperty:Ljava/beans/PropertyDescriptor;
         1: .line 1794
            return
        end local 1 // java.beans.PropertyDescriptor exposeAsProperty
        end local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lfreemarker/ext/beans/BeansWrapper$MethodAppearanceDecision;
            0    2     1  exposeAsProperty  Ljava/beans/PropertyDescriptor;
    MethodParameters:
                  Name  Flags
      exposeAsProperty  

  public boolean getReplaceExistingProperty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
         0: .line 1802
            aload 0 /* this */
            getfield freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision.replaceExistingProperty:Z
            ireturn
        end local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lfreemarker/ext/beans/BeansWrapper$MethodAppearanceDecision;

  public void setReplaceExistingProperty(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
        start local 1 // boolean overrideExistingProperty
         0: .line 1818
            aload 0 /* this */
            iload 1 /* overrideExistingProperty */
            putfield freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision.replaceExistingProperty:Z
         1: .line 1819
            return
        end local 1 // boolean overrideExistingProperty
        end local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    2     0                      this  Lfreemarker/ext/beans/BeansWrapper$MethodAppearanceDecision;
            0    2     1  overrideExistingProperty  Z
    MethodParameters:
                          Name  Flags
      overrideExistingProperty  

  public java.lang.String getExposeMethodAs();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
         0: .line 1825
            aload 0 /* this */
            getfield freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision.exposeMethodAs:Ljava/lang/String;
            areturn
        end local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lfreemarker/ext/beans/BeansWrapper$MethodAppearanceDecision;

  public void setExposeMethodAs(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
        start local 1 // java.lang.String exposeAsMethod
         0: .line 1832
            aload 0 /* this */
            aload 1 /* exposeAsMethod */
            putfield freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision.exposeMethodAs:Ljava/lang/String;
         1: .line 1833
            return
        end local 1 // java.lang.String exposeAsMethod
        end local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lfreemarker/ext/beans/BeansWrapper$MethodAppearanceDecision;
            0    2     1  exposeAsMethod  Ljava/lang/String;
    MethodParameters:
                Name  Flags
      exposeAsMethod  

  public boolean getMethodShadowsProperty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
         0: .line 1839
            aload 0 /* this */
            getfield freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision.methodShadowsProperty:Z
            ireturn
        end local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lfreemarker/ext/beans/BeansWrapper$MethodAppearanceDecision;

  public void setMethodShadowsProperty(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
        start local 1 // boolean shadowEarlierProperty
         0: .line 1846
            aload 0 /* this */
            iload 1 /* shadowEarlierProperty */
            putfield freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision.methodShadowsProperty:Z
         1: .line 1847
            return
        end local 1 // boolean shadowEarlierProperty
        end local 0 // freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    2     0                   this  Lfreemarker/ext/beans/BeansWrapper$MethodAppearanceDecision;
            0    2     1  shadowEarlierProperty  Z
    MethodParameters:
                       Name  Flags
      shadowEarlierProperty  
}
SourceFile: "BeansWrapper.java"
NestHost: freemarker.ext.beans.BeansWrapper
InnerClasses:
  public final MethodAppearanceDecision = freemarker.ext.beans.BeansWrapper$MethodAppearanceDecision of freemarker.ext.beans.BeansWrapper