public class org.antlr.v4.gui.GraphicsSupport
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.antlr.v4.gui.GraphicsSupport
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.antlr.v4.gui.GraphicsSupport this
         0: .line 28
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.antlr.v4.gui.GraphicsSupport this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/antlr/v4/gui/GraphicsSupport;

  public static void saveImage(javax.swing.JComponent, java.lang.String);
    descriptor: (Ljavax/swing/JComponent;Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=2
        start local 0 // javax.swing.JComponent comp
        start local 1 // java.lang.String fileName
         0: .line 60
            aload 1 /* fileName */
            ldc ".ps"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 1
            aload 1 /* fileName */
            ldc ".eps"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 17
         1: .line 61
      StackMap locals:
      StackMap stack:
            getstatic javax.print.DocFlavor$SERVICE_FORMATTED.PRINTABLE:Ljavax/print/DocFlavor$SERVICE_FORMATTED;
            astore 2 /* flavor */
        start local 2 // javax.print.DocFlavor flavor
         2: .line 62
            ldc "application/postscript"
            astore 3 /* mimeType */
        start local 3 // java.lang.String mimeType
         3: .line 64
            aload 2 /* flavor */
            aload 3 /* mimeType */
            invokestatic javax.print.StreamPrintServiceFactory.lookupStreamPrintServiceFactories:(Ljavax/print/DocFlavor;Ljava/lang/String;)[Ljavax/print/StreamPrintServiceFactory;
         4: .line 63
            astore 4 /* factories */
        start local 4 // javax.print.StreamPrintServiceFactory[] factories
         5: .line 65
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            aload 4 /* factories */
            invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         6: .line 66
            aload 4 /* factories */
            arraylength
            ifle 30
         7: .line 67
            new java.io.FileOutputStream
            dup
            aload 1 /* fileName */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
            astore 5 /* out */
        start local 5 // java.io.FileOutputStream out
         8: .line 68
            aload 4 /* factories */
            iconst_0
            aaload
            aload 5 /* out */
            invokevirtual javax.print.StreamPrintServiceFactory.getPrintService:(Ljava/io/OutputStream;)Ljavax/print/StreamPrintService;
            astore 6 /* service */
        start local 6 // javax.print.PrintService service
         9: .line 69
            new javax.print.SimpleDoc
            dup
            new org.antlr.v4.gui.GraphicsSupport$1
            dup
            aload 0 /* comp */
            invokespecial org.antlr.v4.gui.GraphicsSupport$1.<init>:(Ljavax/swing/JComponent;)V
        10: .line 90
            aload 2 /* flavor */
            aconst_null
        11: .line 69
            invokespecial javax.print.SimpleDoc.<init>:(Ljava/lang/Object;Ljavax/print/DocFlavor;Ljavax/print/attribute/DocAttributeSet;)V
            astore 7 /* doc */
        start local 7 // javax.print.SimpleDoc doc
        12: .line 91
            aload 6 /* service */
            invokeinterface javax.print.PrintService.createPrintJob:()Ljavax/print/DocPrintJob;
            astore 8 /* job */
        start local 8 // javax.print.DocPrintJob job
        13: .line 92
            new javax.print.attribute.HashPrintRequestAttributeSet
            dup
            invokespecial javax.print.attribute.HashPrintRequestAttributeSet.<init>:()V
            astore 9 /* attributes */
        start local 9 // javax.print.attribute.PrintRequestAttributeSet attributes
        14: .line 93
            aload 8 /* job */
            aload 7 /* doc */
            aload 9 /* attributes */
            invokeinterface javax.print.DocPrintJob.print:(Ljavax/print/Doc;Ljavax/print/attribute/PrintRequestAttributeSet;)V
        15: .line 94
            aload 5 /* out */
            invokevirtual java.io.FileOutputStream.close:()V
        end local 9 // javax.print.attribute.PrintRequestAttributeSet attributes
        end local 8 // javax.print.DocPrintJob job
        end local 7 // javax.print.SimpleDoc doc
        end local 6 // javax.print.PrintService service
        end local 5 // java.io.FileOutputStream out
        end local 4 // javax.print.StreamPrintServiceFactory[] factories
        end local 3 // java.lang.String mimeType
        end local 2 // javax.print.DocFlavor flavor
        16: .line 96
            goto 30
        17: .line 99
      StackMap locals:
      StackMap stack:
            aload 0 /* comp */
            invokevirtual javax.swing.JComponent.getBounds:()Ljava/awt/Rectangle;
            astore 2 /* rect */
        start local 2 // java.awt.Rectangle rect
        18: .line 100
            new java.awt.image.BufferedImage
            dup
            aload 2 /* rect */
            getfield java.awt.Rectangle.width:I
            aload 2 /* rect */
            getfield java.awt.Rectangle.height:I
        19: .line 101
            iconst_1
        20: .line 100
            invokespecial java.awt.image.BufferedImage.<init>:(III)V
            astore 3 /* image */
        start local 3 // java.awt.image.BufferedImage image
        21: .line 102
            aload 3 /* image */
            invokevirtual java.awt.image.BufferedImage.getGraphics:()Ljava/awt/Graphics;
            checkcast java.awt.Graphics2D
            astore 4 /* g */
        start local 4 // java.awt.Graphics2D g
        22: .line 103
            aload 4 /* g */
            getstatic java.awt.Color.WHITE:Ljava/awt/Color;
            invokevirtual java.awt.Graphics2D.setColor:(Ljava/awt/Color;)V
        23: .line 104
            aload 4 /* g */
            aload 2 /* rect */
            invokevirtual java.awt.Graphics2D.fill:(Ljava/awt/Shape;)V
        24: .line 106
            aload 0 /* comp */
            aload 4 /* g */
            invokevirtual javax.swing.JComponent.paint:(Ljava/awt/Graphics;)V
        25: .line 107
            aload 1 /* fileName */
            aload 1 /* fileName */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 5 /* extension */
        start local 5 // java.lang.String extension
        26: .line 108
            aload 3 /* image */
            aload 5 /* extension */
            new java.io.File
            dup
            aload 1 /* fileName */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokestatic javax.imageio.ImageIO.write:(Ljava/awt/image/RenderedImage;Ljava/lang/String;Ljava/io/File;)Z
            istore 6 /* result */
        start local 6 // boolean result
        27: .line 109
            iload 6 /* result */
            ifne 29
        28: .line 110
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Now imager for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* extension */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        29: .line 112
      StackMap locals: javax.swing.JComponent java.lang.String java.awt.Rectangle java.awt.image.BufferedImage java.awt.Graphics2D java.lang.String int
      StackMap stack:
            aload 4 /* g */
            invokevirtual java.awt.Graphics2D.dispose:()V
        end local 6 // boolean result
        end local 5 // java.lang.String extension
        end local 4 // java.awt.Graphics2D g
        end local 3 // java.awt.image.BufferedImage image
        end local 2 // java.awt.Rectangle rect
        30: .line 114
      StackMap locals: javax.swing.JComponent java.lang.String
      StackMap stack:
            return
        end local 1 // java.lang.String fileName
        end local 0 // javax.swing.JComponent comp
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   31     0        comp  Ljavax/swing/JComponent;
            0   31     1    fileName  Ljava/lang/String;
            2   16     2      flavor  Ljavax/print/DocFlavor;
            3   16     3    mimeType  Ljava/lang/String;
            5   16     4   factories  [Ljavax/print/StreamPrintServiceFactory;
            8   16     5         out  Ljava/io/FileOutputStream;
            9   16     6     service  Ljavax/print/PrintService;
           12   16     7         doc  Ljavax/print/SimpleDoc;
           13   16     8         job  Ljavax/print/DocPrintJob;
           14   16     9  attributes  Ljavax/print/attribute/PrintRequestAttributeSet;
           18   30     2        rect  Ljava/awt/Rectangle;
           21   30     3       image  Ljava/awt/image/BufferedImage;
           22   30     4           g  Ljava/awt/Graphics2D;
           26   30     5   extension  Ljava/lang/String;
           27   30     6      result  Z
    Exceptions:
      throws java.io.IOException, javax.print.PrintException
    MethodParameters:
          Name  Flags
      comp      final
      fileName  
}
SourceFile: "GraphicsSupport.java"
NestMembers:
  org.antlr.v4.gui.GraphicsSupport$1
InnerClasses:
  public SERVICE_FORMATTED = javax.print.DocFlavor$SERVICE_FORMATTED of javax.print.DocFlavor
  org.antlr.v4.gui.GraphicsSupport$1