public abstract class com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode extends com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalOperation
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode
  super_class: com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalOperation
{
  private final com.oracle.truffle.api.profiles.ConditionProfile argumentsCount;
    descriptor: Lcom/oracle/truffle/api/profiles/ConditionProfile;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.profiles.BranchProfile consoleIndentation;
    descriptor: Lcom/oracle/truffle/api/profiles/BranchProfile;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean useErr;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(com.oracle.truffle.js.runtime.JSContext, com.oracle.truffle.js.nodes.function.JSBuiltin, boolean);
    descriptor: (Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/nodes/function/JSBuiltin;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode this
        start local 1 // com.oracle.truffle.js.runtime.JSContext context
        start local 2 // com.oracle.truffle.js.nodes.function.JSBuiltin builtin
        start local 3 // boolean useErr
         0: .line 1314
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* builtin */
            invokespecial com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalOperation.<init>:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/nodes/function/JSBuiltin;)V
         1: .line 1309
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.profiles.ConditionProfile.createBinaryProfile:()Lcom/oracle/truffle/api/profiles/ConditionProfile;
            putfield com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode.argumentsCount:Lcom/oracle/truffle/api/profiles/ConditionProfile;
         2: .line 1310
            aload 0 /* this */
            invokestatic com.oracle.truffle.api.profiles.BranchProfile.create:()Lcom/oracle/truffle/api/profiles/BranchProfile;
            putfield com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode.consoleIndentation:Lcom/oracle/truffle/api/profiles/BranchProfile;
         3: .line 1315
            aload 0 /* this */
            iload 3 /* useErr */
            putfield com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode.useErr:Z
         4: .line 1316
            return
        end local 3 // boolean useErr
        end local 2 // com.oracle.truffle.js.nodes.function.JSBuiltin builtin
        end local 1 // com.oracle.truffle.js.runtime.JSContext context
        end local 0 // com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lcom/oracle/truffle/js/builtins/GlobalBuiltins$JSGlobalPrintNode;
            0    5     1  context  Lcom/oracle/truffle/js/runtime/JSContext;
            0    5     2  builtin  Lcom/oracle/truffle/js/nodes/function/JSBuiltin;
            0    5     3   useErr  Z
    MethodParameters:
         Name  Flags
      context  
      builtin  
      useErr   

  public abstract java.lang.Object executeObjectArray(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      args  

  protected java.lang.Object print(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode this
        start local 1 // java.lang.Object[] arguments
         0: .line 1323
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* builder */
        start local 2 // java.lang.StringBuilder builder
         1: .line 1324
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode.getContext:()Lcom/oracle/truffle/js/runtime/JSContext;
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getRealm:()Lcom/oracle/truffle/js/runtime/JSRealm;
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.getConsoleUtil:()Lcom/oracle/truffle/js/runtime/JSConsoleUtil;
            astore 3 /* consoleUtil */
        start local 3 // com.oracle.truffle.js.runtime.JSConsoleUtil consoleUtil
         2: .line 1325
            aload 3 /* consoleUtil */
            invokevirtual com.oracle.truffle.js.runtime.JSConsoleUtil.getConsoleIndentation:()I
            ifle 5
         3: .line 1326
            aload 0 /* this */
            getfield com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode.consoleIndentation:Lcom/oracle/truffle/api/profiles/BranchProfile;
            invokevirtual com.oracle.truffle.api.profiles.BranchProfile.enter:()V
         4: .line 1327
            aload 2 /* builder */
            aload 3 /* consoleUtil */
            invokevirtual com.oracle.truffle.js.runtime.JSConsoleUtil.getConsoleIndentationString:()Ljava/lang/String;
            invokestatic com.oracle.truffle.js.runtime.Boundaries.builderAppend:(Ljava/lang/StringBuilder;Ljava/lang/String;)V
         5: .line 1329
      StackMap locals: java.lang.StringBuilder com.oracle.truffle.js.runtime.JSConsoleUtil
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode.argumentsCount:Lcom/oracle/truffle/api/profiles/ConditionProfile;
            aload 1 /* arguments */
            arraylength
            iconst_1
            if_icmpne 6
            iconst_1
            goto 7
      StackMap locals:
      StackMap stack: com.oracle.truffle.api.profiles.ConditionProfile
         6: iconst_0
      StackMap locals: com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode java.lang.Object[] java.lang.StringBuilder com.oracle.truffle.js.runtime.JSConsoleUtil
      StackMap stack: com.oracle.truffle.api.profiles.ConditionProfile int
         7: invokevirtual com.oracle.truffle.api.profiles.ConditionProfile.profile:(Z)Z
            ifeq 10
         8: .line 1330
            aload 2 /* builder */
            aload 0 /* this */
            aload 1 /* arguments */
            iconst_0
            aaload
            invokevirtual com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode.toString1:(Ljava/lang/Object;)Ljava/lang/String;
            invokestatic com.oracle.truffle.js.runtime.Boundaries.builderAppend:(Ljava/lang/StringBuilder;Ljava/lang/String;)V
         9: .line 1331
            goto 17
        10: .line 1332
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        11: goto 16
        12: .line 1333
      StackMap locals: int
      StackMap stack:
            iload 4 /* i */
            ifeq 14
        13: .line 1334
            aload 2 /* builder */
            bipush 32
            invokestatic com.oracle.truffle.js.runtime.Boundaries.builderAppend:(Ljava/lang/StringBuilder;C)V
        14: .line 1336
      StackMap locals:
      StackMap stack:
            aload 2 /* builder */
            aload 0 /* this */
            aload 1 /* arguments */
            iload 4 /* i */
            aaload
            invokevirtual com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode.toString1:(Ljava/lang/Object;)Ljava/lang/String;
            invokestatic com.oracle.truffle.js.runtime.Boundaries.builderAppend:(Ljava/lang/StringBuilder;Ljava/lang/String;)V
        15: .line 1332
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 4 /* i */
            aload 1 /* arguments */
            arraylength
            if_icmplt 12
        end local 4 // int i
        17: .line 1339
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* builder */
            invokevirtual com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode.printIntl:(Ljava/lang/StringBuilder;)Ljava/lang/Object;
            areturn
        end local 3 // com.oracle.truffle.js.runtime.JSConsoleUtil consoleUtil
        end local 2 // java.lang.StringBuilder builder
        end local 1 // java.lang.Object[] arguments
        end local 0 // com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   18     0         this  Lcom/oracle/truffle/js/builtins/GlobalBuiltins$JSGlobalPrintNode;
            0   18     1    arguments  [Ljava/lang/Object;
            1   18     2      builder  Ljava/lang/StringBuilder;
            2   18     3  consoleUtil  Lcom/oracle/truffle/js/runtime/JSConsoleUtil;
           11   17     4            i  I
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
           Name  Flags
      arguments  

  private java.lang.Object printIntl(java.lang.StringBuilder);
    descriptor: (Ljava/lang/StringBuilder;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode this
        start local 1 // java.lang.StringBuilder builder
         0: .line 1344
            aload 1 /* builder */
            bipush 10
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         1: .line 1345
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode.getContext:()Lcom/oracle/truffle/js/runtime/JSContext;
            invokevirtual com.oracle.truffle.js.runtime.JSContext.getRealm:()Lcom/oracle/truffle/js/runtime/JSRealm;
            astore 2 /* realm */
        start local 2 // com.oracle.truffle.js.runtime.JSRealm realm
         2: .line 1346
            aload 0 /* this */
            getfield com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode.useErr:Z
            ifeq 3
            aload 2 /* realm */
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.getErrorWriter:()Ljava/io/PrintWriter;
            goto 4
      StackMap locals: com.oracle.truffle.js.runtime.JSRealm
      StackMap stack:
         3: aload 2 /* realm */
            invokevirtual com.oracle.truffle.js.runtime.JSRealm.getOutputWriter:()Ljava/io/PrintWriter;
      StackMap locals:
      StackMap stack: java.io.PrintWriter
         4: astore 3 /* writer */
        start local 3 // java.io.PrintWriter writer
         5: .line 1347
            aload 3 /* writer */
            aload 1 /* builder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
         6: .line 1348
            aload 3 /* writer */
            invokevirtual java.io.PrintWriter.flush:()V
         7: .line 1349
            getstatic com.oracle.truffle.js.runtime.objects.Undefined.instance:Lcom/oracle/truffle/js/runtime/objects/JSDynamicObject;
            areturn
        end local 3 // java.io.PrintWriter writer
        end local 2 // com.oracle.truffle.js.runtime.JSRealm realm
        end local 1 // java.lang.StringBuilder builder
        end local 0 // com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lcom/oracle/truffle/js/builtins/GlobalBuiltins$JSGlobalPrintNode;
            0    8     1  builder  Ljava/lang/StringBuilder;
            2    8     2    realm  Lcom/oracle/truffle/js/runtime/JSRealm;
            5    8     3   writer  Ljava/io/PrintWriter;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
    MethodParameters:
         Name  Flags
      builder  
}
SourceFile: "GlobalBuiltins.java"
NestHost: com.oracle.truffle.js.builtins.GlobalBuiltins
InnerClasses:
  public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
  private abstract JSGlobalOperation = com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalOperation of com.oracle.truffle.js.builtins.GlobalBuiltins
  public abstract JSGlobalPrintNode = com.oracle.truffle.js.builtins.GlobalBuiltins$JSGlobalPrintNode of com.oracle.truffle.js.builtins.GlobalBuiltins