public class io.vertx.ext.mail.MailAttachment
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.ext.mail.MailAttachment
  super_class: java.lang.Object
{
  private io.vertx.core.buffer.Buffer data;
    descriptor: Lio/vertx/core/buffer/Buffer;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

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

  private io.vertx.core.MultiMap headers;
    descriptor: Lio/vertx/core/MultiMap;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.mail.MailAttachment this
         0: .line 51
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 52
            return
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/ext/mail/MailAttachment;

  public void <init>(io.vertx.ext.mail.MailAttachment);
    descriptor: (Lio/vertx/ext/mail/MailAttachment;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.ext.mail.MailAttachment this
        start local 1 // io.vertx.ext.mail.MailAttachment other
         0: .line 59
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 60
            aload 1 /* other */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 61
            aload 0 /* this */
            aload 1 /* other */
            getfield io.vertx.ext.mail.MailAttachment.data:Lio/vertx/core/buffer/Buffer;
            ifnonnull 3
            aconst_null
            goto 4
      StackMap locals: io.vertx.ext.mail.MailAttachment io.vertx.ext.mail.MailAttachment
      StackMap stack: io.vertx.ext.mail.MailAttachment
         3: aload 1 /* other */
            getfield io.vertx.ext.mail.MailAttachment.data:Lio/vertx/core/buffer/Buffer;
            invokeinterface io.vertx.core.buffer.Buffer.copy:()Lio/vertx/core/buffer/Buffer;
      StackMap locals: io.vertx.ext.mail.MailAttachment io.vertx.ext.mail.MailAttachment
      StackMap stack: io.vertx.ext.mail.MailAttachment io.vertx.core.buffer.Buffer
         4: putfield io.vertx.ext.mail.MailAttachment.data:Lio/vertx/core/buffer/Buffer;
         5: .line 62
            aload 0 /* this */
            aload 1 /* other */
            getfield io.vertx.ext.mail.MailAttachment.name:Ljava/lang/String;
            putfield io.vertx.ext.mail.MailAttachment.name:Ljava/lang/String;
         6: .line 63
            aload 0 /* this */
            aload 1 /* other */
            getfield io.vertx.ext.mail.MailAttachment.contentType:Ljava/lang/String;
            putfield io.vertx.ext.mail.MailAttachment.contentType:Ljava/lang/String;
         7: .line 64
            aload 0 /* this */
            aload 1 /* other */
            getfield io.vertx.ext.mail.MailAttachment.disposition:Ljava/lang/String;
            putfield io.vertx.ext.mail.MailAttachment.disposition:Ljava/lang/String;
         8: .line 65
            aload 0 /* this */
            aload 1 /* other */
            getfield io.vertx.ext.mail.MailAttachment.description:Ljava/lang/String;
            putfield io.vertx.ext.mail.MailAttachment.description:Ljava/lang/String;
         9: .line 66
            aload 0 /* this */
            aload 1 /* other */
            getfield io.vertx.ext.mail.MailAttachment.description:Ljava/lang/String;
            putfield io.vertx.ext.mail.MailAttachment.description:Ljava/lang/String;
        10: .line 67
            aload 0 /* this */
            aload 1 /* other */
            getfield io.vertx.ext.mail.MailAttachment.contentId:Ljava/lang/String;
            putfield io.vertx.ext.mail.MailAttachment.contentId:Ljava/lang/String;
        11: .line 68
            aload 0 /* this */
            aload 1 /* other */
            getfield io.vertx.ext.mail.MailAttachment.headers:Lio/vertx/core/MultiMap;
            ifnonnull 12
            aconst_null
            goto 13
      StackMap locals:
      StackMap stack: io.vertx.ext.mail.MailAttachment
        12: new io.vertx.core.http.CaseInsensitiveHeaders
            dup
            invokespecial io.vertx.core.http.CaseInsensitiveHeaders.<init>:()V
            aload 1 /* other */
            getfield io.vertx.ext.mail.MailAttachment.headers:Lio/vertx/core/MultiMap;
            invokevirtual io.vertx.core.http.CaseInsensitiveHeaders.addAll:(Lio/vertx/core/MultiMap;)Lio/vertx/core/MultiMap;
      StackMap locals: io.vertx.ext.mail.MailAttachment io.vertx.ext.mail.MailAttachment
      StackMap stack: io.vertx.ext.mail.MailAttachment io.vertx.core.MultiMap
        13: putfield io.vertx.ext.mail.MailAttachment.headers:Lio/vertx/core/MultiMap;
        14: .line 69
            return
        end local 1 // io.vertx.ext.mail.MailAttachment other
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   this  Lio/vertx/ext/mail/MailAttachment;
            0   15     1  other  Lio/vertx/ext/mail/MailAttachment;
    MethodParameters:
       Name  Flags
      other  final

  public void <init>(io.vertx.core.json.JsonObject);
    descriptor: (Lio/vertx/core/json/JsonObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // io.vertx.ext.mail.MailAttachment this
        start local 1 // io.vertx.core.json.JsonObject json
         0: .line 76
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 77
            aload 1 /* json */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 78
            aload 0 /* this */
            aload 1 /* json */
            ldc "data"
            invokevirtual io.vertx.core.json.JsonObject.getBinary:(Ljava/lang/String;)[B
            ifnonnull 3
            aconst_null
            goto 4
      StackMap locals: io.vertx.ext.mail.MailAttachment io.vertx.core.json.JsonObject
      StackMap stack: io.vertx.ext.mail.MailAttachment
         3: aload 1 /* json */
            ldc "data"
            invokevirtual io.vertx.core.json.JsonObject.getBinary:(Ljava/lang/String;)[B
            invokestatic io.vertx.core.buffer.Buffer.buffer:([B)Lio/vertx/core/buffer/Buffer;
      StackMap locals: io.vertx.ext.mail.MailAttachment io.vertx.core.json.JsonObject
      StackMap stack: io.vertx.ext.mail.MailAttachment io.vertx.core.buffer.Buffer
         4: putfield io.vertx.ext.mail.MailAttachment.data:Lio/vertx/core/buffer/Buffer;
         5: .line 79
            aload 0 /* this */
            aload 1 /* json */
            ldc "name"
            invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
            putfield io.vertx.ext.mail.MailAttachment.name:Ljava/lang/String;
         6: .line 80
            aload 0 /* this */
            aload 1 /* json */
            ldc "contentType"
            invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
            putfield io.vertx.ext.mail.MailAttachment.contentType:Ljava/lang/String;
         7: .line 81
            aload 0 /* this */
            aload 1 /* json */
            ldc "disposition"
            invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
            putfield io.vertx.ext.mail.MailAttachment.disposition:Ljava/lang/String;
         8: .line 82
            aload 0 /* this */
            aload 1 /* json */
            ldc "description"
            invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
            putfield io.vertx.ext.mail.MailAttachment.description:Ljava/lang/String;
         9: .line 83
            aload 0 /* this */
            aload 1 /* json */
            ldc "contentId"
            invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
            putfield io.vertx.ext.mail.MailAttachment.contentId:Ljava/lang/String;
        10: .line 84
            aload 1 /* json */
            ldc "headers"
            invokevirtual io.vertx.core.json.JsonObject.getJsonObject:(Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
            astore 2 /* headers */
        start local 2 // io.vertx.core.json.JsonObject headers
        11: .line 85
            aload 2 /* headers */
            ifnull 13
        12: .line 86
            aload 0 /* this */
            aload 2 /* headers */
            invokestatic io.vertx.ext.mail.Utils.jsonToMultiMap:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/MultiMap;
            putfield io.vertx.ext.mail.MailAttachment.headers:Lio/vertx/core/MultiMap;
        13: .line 88
      StackMap locals: io.vertx.core.json.JsonObject
      StackMap stack:
            return
        end local 2 // io.vertx.core.json.JsonObject headers
        end local 1 // io.vertx.core.json.JsonObject json
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lio/vertx/ext/mail/MailAttachment;
            0   14     1     json  Lio/vertx/core/json/JsonObject;
           11   14     2  headers  Lio/vertx/core/json/JsonObject;
    MethodParameters:
      Name  Flags
      json  final

  public io.vertx.core.buffer.Buffer getData();
    descriptor: ()Lio/vertx/core/buffer/Buffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.mail.MailAttachment this
         0: .line 96
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.data:Lio/vertx/core/buffer/Buffer;
            areturn
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/mail/MailAttachment;

  public io.vertx.ext.mail.MailAttachment setData(io.vertx.core.buffer.Buffer);
    descriptor: (Lio/vertx/core/buffer/Buffer;)Lio/vertx/ext/mail/MailAttachment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.ext.mail.MailAttachment this
        start local 1 // io.vertx.core.buffer.Buffer data
         0: .line 106
            aload 0 /* this */
            aload 1 /* data */
            putfield io.vertx.ext.mail.MailAttachment.data:Lio/vertx/core/buffer/Buffer;
         1: .line 107
            aload 0 /* this */
            areturn
        end local 1 // io.vertx.core.buffer.Buffer data
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/ext/mail/MailAttachment;
            0    2     1  data  Lio/vertx/core/buffer/Buffer;
    MethodParameters:
      Name  Flags
      data  final

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.mail.MailAttachment this
         0: .line 116
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.name:Ljava/lang/String;
            areturn
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/mail/MailAttachment;

  public io.vertx.ext.mail.MailAttachment setName(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/ext/mail/MailAttachment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.ext.mail.MailAttachment this
        start local 1 // java.lang.String name
         0: .line 129
            aload 0 /* this */
            aload 1 /* name */
            putfield io.vertx.ext.mail.MailAttachment.name:Ljava/lang/String;
         1: .line 130
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String name
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/ext/mail/MailAttachment;
            0    2     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  final

  public java.lang.String getContentType();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.mail.MailAttachment this
         0: .line 139
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.contentType:Ljava/lang/String;
            areturn
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/mail/MailAttachment;

  public io.vertx.ext.mail.MailAttachment setContentType(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/ext/mail/MailAttachment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.ext.mail.MailAttachment this
        start local 1 // java.lang.String contentType
         0: .line 149
            aload 0 /* this */
            aload 1 /* contentType */
            putfield io.vertx.ext.mail.MailAttachment.contentType:Ljava/lang/String;
         1: .line 150
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String contentType
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lio/vertx/ext/mail/MailAttachment;
            0    2     1  contentType  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      contentType  final

  public java.lang.String getDisposition();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.mail.MailAttachment this
         0: .line 159
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.disposition:Ljava/lang/String;
            areturn
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/mail/MailAttachment;

  public io.vertx.ext.mail.MailAttachment setDisposition(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/ext/mail/MailAttachment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.ext.mail.MailAttachment this
        start local 1 // java.lang.String disposition
         0: .line 169
            aload 0 /* this */
            aload 1 /* disposition */
            putfield io.vertx.ext.mail.MailAttachment.disposition:Ljava/lang/String;
         1: .line 170
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String disposition
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lio/vertx/ext/mail/MailAttachment;
            0    2     1  disposition  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      disposition  final

  public java.lang.String getDescription();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.mail.MailAttachment this
         0: .line 179
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.description:Ljava/lang/String;
            areturn
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/mail/MailAttachment;

  public io.vertx.ext.mail.MailAttachment setDescription(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/ext/mail/MailAttachment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.ext.mail.MailAttachment this
        start local 1 // java.lang.String description
         0: .line 189
            aload 0 /* this */
            aload 1 /* description */
            putfield io.vertx.ext.mail.MailAttachment.description:Ljava/lang/String;
         1: .line 190
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String description
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lio/vertx/ext/mail/MailAttachment;
            0    2     1  description  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      description  final

  public java.lang.String getContentId();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.mail.MailAttachment this
         0: .line 199
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.contentId:Ljava/lang/String;
            areturn
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/mail/MailAttachment;

  public io.vertx.ext.mail.MailAttachment setContentId(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/ext/mail/MailAttachment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.ext.mail.MailAttachment this
        start local 1 // java.lang.String contentId
         0: .line 209
            aload 0 /* this */
            aload 1 /* contentId */
            putfield io.vertx.ext.mail.MailAttachment.contentId:Ljava/lang/String;
         1: .line 210
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String contentId
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lio/vertx/ext/mail/MailAttachment;
            0    2     1  contentId  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      contentId  final

  public io.vertx.ext.mail.MailAttachment addHeader(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lio/vertx/ext/mail/MailAttachment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.ext.mail.MailAttachment this
        start local 1 // java.lang.String key
        start local 2 // java.lang.String value
         0: .line 221
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.headers:Lio/vertx/core/MultiMap;
            ifnonnull 2
         1: .line 222
            aload 0 /* this */
            new io.vertx.core.http.CaseInsensitiveHeaders
            dup
            invokespecial io.vertx.core.http.CaseInsensitiveHeaders.<init>:()V
            putfield io.vertx.ext.mail.MailAttachment.headers:Lio/vertx/core/MultiMap;
         2: .line 224
      StackMap locals:
      StackMap stack:
            aload 1 /* key */
            ldc "no null key accepted"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         3: .line 225
            aload 2 /* value */
            ldc "no null value accepted"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         4: .line 226
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.headers:Lio/vertx/core/MultiMap;
            aload 1 /* key */
            aload 2 /* value */
            invokeinterface io.vertx.core.MultiMap.add:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/MultiMap;
            pop
         5: .line 227
            aload 0 /* this */
            areturn
        end local 2 // java.lang.String value
        end local 1 // java.lang.String key
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lio/vertx/ext/mail/MailAttachment;
            0    6     1    key  Ljava/lang/String;
            0    6     2  value  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      key    
      value  

  public io.vertx.core.MultiMap getHeaders();
    descriptor: ()Lio/vertx/core/MultiMap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.mail.MailAttachment this
         0: .line 237
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.headers:Lio/vertx/core/MultiMap;
            areturn
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/mail/MailAttachment;
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.GenIgnore()
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        io.vertx.codegen.annotations.GenIgnore()

  public io.vertx.ext.mail.MailAttachment setHeaders(io.vertx.core.MultiMap);
    descriptor: (Lio/vertx/core/MultiMap;)Lio/vertx/ext/mail/MailAttachment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.ext.mail.MailAttachment this
        start local 1 // io.vertx.core.MultiMap headers
         0: .line 248
            aload 0 /* this */
            aload 1 /* headers */
            putfield io.vertx.ext.mail.MailAttachment.headers:Lio/vertx/core/MultiMap;
         1: .line 249
            aload 0 /* this */
            areturn
        end local 1 // io.vertx.core.MultiMap headers
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/ext/mail/MailAttachment;
            0    2     1  headers  Lio/vertx/core/MultiMap;
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.GenIgnore()
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        io.vertx.codegen.annotations.GenIgnore()
    MethodParameters:
         Name  Flags
      headers  final

  public io.vertx.core.json.JsonObject toJson();
    descriptor: ()Lio/vertx/core/json/JsonObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // io.vertx.ext.mail.MailAttachment this
         0: .line 258
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
            astore 1 /* json */
        start local 1 // io.vertx.core.json.JsonObject json
         1: .line 259
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.data:Lio/vertx/core/buffer/Buffer;
            ifnull 3
         2: .line 260
            aload 1 /* json */
            ldc "data"
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.data:Lio/vertx/core/buffer/Buffer;
            invokeinterface io.vertx.core.buffer.Buffer.getBytes:()[B
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;[B)Lio/vertx/core/json/JsonObject;
            pop
         3: .line 262
      StackMap locals: io.vertx.core.json.JsonObject
      StackMap stack:
            aload 1 /* json */
            ldc "name"
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.name:Ljava/lang/String;
            invokestatic io.vertx.ext.mail.Utils.putIfNotNull:(Lio/vertx/core/json/JsonObject;Ljava/lang/String;Ljava/lang/Object;)V
         4: .line 263
            aload 1 /* json */
            ldc "contentType"
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.contentType:Ljava/lang/String;
            invokestatic io.vertx.ext.mail.Utils.putIfNotNull:(Lio/vertx/core/json/JsonObject;Ljava/lang/String;Ljava/lang/Object;)V
         5: .line 264
            aload 1 /* json */
            ldc "disposition"
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.disposition:Ljava/lang/String;
            invokestatic io.vertx.ext.mail.Utils.putIfNotNull:(Lio/vertx/core/json/JsonObject;Ljava/lang/String;Ljava/lang/Object;)V
         6: .line 265
            aload 1 /* json */
            ldc "description"
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.description:Ljava/lang/String;
            invokestatic io.vertx.ext.mail.Utils.putIfNotNull:(Lio/vertx/core/json/JsonObject;Ljava/lang/String;Ljava/lang/Object;)V
         7: .line 266
            aload 1 /* json */
            ldc "contentId"
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.contentId:Ljava/lang/String;
            invokestatic io.vertx.ext.mail.Utils.putIfNotNull:(Lio/vertx/core/json/JsonObject;Ljava/lang/String;Ljava/lang/Object;)V
         8: .line 267
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.headers:Lio/vertx/core/MultiMap;
            ifnull 10
         9: .line 268
            aload 1 /* json */
            ldc "headers"
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.headers:Lio/vertx/core/MultiMap;
            invokestatic io.vertx.ext.mail.Utils.multiMapToJson:(Lio/vertx/core/MultiMap;)Lio/vertx/core/json/JsonObject;
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
            pop
        10: .line 270
      StackMap locals:
      StackMap stack:
            aload 1 /* json */
            areturn
        end local 1 // io.vertx.core.json.JsonObject json
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lio/vertx/ext/mail/MailAttachment;
            1   11     1  json  Lio/vertx/core/json/JsonObject;

  private java.util.List<java.lang.Object> getList();
    descriptor: ()Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // io.vertx.ext.mail.MailAttachment this
         0: .line 274
            bipush 6
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.data:Lio/vertx/core/buffer/Buffer;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.name:Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.disposition:Ljava/lang/String;
            aastore
            dup
            iconst_3
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.description:Ljava/lang/String;
            aastore
            dup
            iconst_4
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.contentId:Ljava/lang/String;
            aastore
            dup
            iconst_5
            aload 0 /* this */
            getfield io.vertx.ext.mail.MailAttachment.headers:Lio/vertx/core/MultiMap;
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            areturn
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/mail/MailAttachment;
    Signature: ()Ljava/util/List<Ljava/lang/Object;>;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.ext.mail.MailAttachment this
        start local 1 // java.lang.Object o
         0: .line 279
            aload 0 /* this */
            aload 1 /* o */
            if_acmpne 2
         1: .line 280
            iconst_1
            ireturn
         2: .line 282
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            instanceof io.vertx.ext.mail.MailAttachment
            ifne 4
         3: .line 283
            iconst_0
            ireturn
         4: .line 285
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            checkcast io.vertx.ext.mail.MailAttachment
            astore 2 /* attachment */
        start local 2 // io.vertx.ext.mail.MailAttachment attachment
         5: .line 286
            aload 0 /* this */
            invokevirtual io.vertx.ext.mail.MailAttachment.getList:()Ljava/util/List;
            aload 2 /* attachment */
            invokevirtual io.vertx.ext.mail.MailAttachment.getList:()Ljava/util/List;
            invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // io.vertx.ext.mail.MailAttachment attachment
        end local 1 // java.lang.Object o
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lio/vertx/ext/mail/MailAttachment;
            0    6     1           o  Ljava/lang/Object;
            5    6     2  attachment  Lio/vertx/ext/mail/MailAttachment;
    MethodParameters:
      Name  Flags
      o     final

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.mail.MailAttachment this
         0: .line 291
            aload 0 /* this */
            invokevirtual io.vertx.ext.mail.MailAttachment.getList:()Ljava/util/List;
            invokeinterface java.util.List.hashCode:()I
            ireturn
        end local 0 // io.vertx.ext.mail.MailAttachment this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/mail/MailAttachment;
}
SourceFile: "MailAttachment.java"
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.DataObject()