public class org.fusesource.jansi.io.AnsiOutputStream extends java.io.FilterOutputStream
{
public static final byte[] RESET_CODE;
private static final int LOOKING_FOR_FIRST_ESC_CHAR;
private static final int LOOKING_FOR_SECOND_ESC_CHAR;
private static final int LOOKING_FOR_NEXT_ARG;
private static final int LOOKING_FOR_STR_ARG_END;
private static final int LOOKING_FOR_INT_ARG_END;
private static final int LOOKING_FOR_OSC_COMMAND;
private static final int LOOKING_FOR_OSC_COMMAND_END;
private static final int LOOKING_FOR_OSC_PARAM;
private static final int LOOKING_FOR_ST;
private static final int LOOKING_FOR_CHARSET;
private static final int FIRST_ESC_CHAR;
private static final int SECOND_ESC_CHAR;
private static final int SECOND_OSC_CHAR;
private static final int BEL;
private static final int SECOND_ST_CHAR;
private static final int SECOND_CHARSET0_CHAR;
private static final int SECOND_CHARSET1_CHAR;
private org.fusesource.jansi.io.AnsiProcessor ap;
private static final int MAX_ESCAPE_SEQUENCE_LENGTH;
private final byte[] buffer;
private int pos;
private int startOfValue;
private final java.util.ArrayList options;
private int state;
private final java.nio.charset.Charset cs;
private final org.fusesource.jansi.io.AnsiOutputStream$WidthSupplier width;
private final org.fusesource.jansi.io.AnsiProcessor processor;
private final org.fusesource.jansi.AnsiType type;
private final org.fusesource.jansi.AnsiColors colors;
private final org.fusesource.jansi.io.AnsiOutputStream$IoRunnable installer;
private final org.fusesource.jansi.io.AnsiOutputStream$IoRunnable uninstaller;
private org.fusesource.jansi.AnsiMode mode;
private boolean resetAtUninstall;
public void <init>(java.io.OutputStream, org.fusesource.jansi.io.AnsiOutputStream$WidthSupplier, org.fusesource.jansi.AnsiMode, org.fusesource.jansi.io.AnsiProcessor, org.fusesource.jansi.AnsiType, org.fusesource.jansi.AnsiColors, java.nio.charset.Charset, org.fusesource.jansi.io.AnsiOutputStream$IoRunnable, org.fusesource.jansi.io.AnsiOutputStream$IoRunnable, boolean)
{
java.io.OutputStream v;
byte[] v;
org.fusesource.jansi.AnsiType v;
org.fusesource.jansi.io.AnsiProcessor v;
org.fusesource.jansi.AnsiColors v;
java.util.ArrayList v;
org.fusesource.jansi.AnsiMode v;
org.fusesource.jansi.io.AnsiOutputStream$IoRunnable v, v;
org.fusesource.jansi.io.AnsiOutputStream$WidthSupplier v;
org.fusesource.jansi.io.AnsiOutputStream v;
java.nio.charset.Charset v;
boolean v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v := @parameter: java.io.OutputStream;
v := @parameter: org.fusesource.jansi.io.AnsiOutputStream$WidthSupplier;
v := @parameter: org.fusesource.jansi.AnsiMode;
v := @parameter: org.fusesource.jansi.io.AnsiProcessor;
v := @parameter: org.fusesource.jansi.AnsiType;
v := @parameter: org.fusesource.jansi.AnsiColors;
v := @parameter: java.nio.charset.Charset;
v := @parameter: org.fusesource.jansi.io.AnsiOutputStream$IoRunnable;
v := @parameter: org.fusesource.jansi.io.AnsiOutputStream$IoRunnable;
v := @parameter: boolean;
specialinvoke v.<java.io.FilterOutputStream: void <init>(java.io.OutputStream)>(v);
v = newarray (byte)[100];
v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: int pos> = 0;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 0;
v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiOutputStream$WidthSupplier width> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiProcessor processor> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.AnsiType type> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.AnsiColors colors> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiOutputStream$IoRunnable installer> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiOutputStream$IoRunnable uninstaller> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: boolean resetAtUninstall> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: java.nio.charset.Charset cs> = v;
virtualinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void setMode(org.fusesource.jansi.AnsiMode)>(v);
return;
}
public int getTerminalWidth()
{
int v;
org.fusesource.jansi.io.AnsiOutputStream v;
org.fusesource.jansi.io.AnsiOutputStream$WidthSupplier v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiOutputStream$WidthSupplier width>;
v = interfaceinvoke v.<org.fusesource.jansi.io.AnsiOutputStream$WidthSupplier: int getTerminalWidth()>();
return v;
}
public org.fusesource.jansi.AnsiType getType()
{
org.fusesource.jansi.io.AnsiOutputStream v;
org.fusesource.jansi.AnsiType v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.AnsiType type>;
return v;
}
public org.fusesource.jansi.AnsiColors getColors()
{
org.fusesource.jansi.io.AnsiOutputStream v;
org.fusesource.jansi.AnsiColors v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.AnsiColors colors>;
return v;
}
public org.fusesource.jansi.AnsiMode getMode()
{
org.fusesource.jansi.io.AnsiOutputStream v;
org.fusesource.jansi.AnsiMode v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.AnsiMode mode>;
return v;
}
public void setMode(org.fusesource.jansi.AnsiMode)
{
java.io.OutputStream v, v;
org.fusesource.jansi.io.AnsiProcessor v, v, v;
org.fusesource.jansi.AnsiColors v;
org.fusesource.jansi.AnsiMode v, v, v;
org.fusesource.jansi.io.AnsiOutputStream v;
org.fusesource.jansi.io.ColorsAnsiProcessor v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v := @parameter: org.fusesource.jansi.AnsiMode;
v = <org.fusesource.jansi.AnsiMode: org.fusesource.jansi.AnsiMode Strip>;
if v != v goto label;
v = new org.fusesource.jansi.io.AnsiProcessor;
v = v;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.io.OutputStream out>;
specialinvoke v.<org.fusesource.jansi.io.AnsiProcessor: void <init>(java.io.OutputStream)>(v);
goto label;
label:
v = <org.fusesource.jansi.AnsiMode: org.fusesource.jansi.AnsiMode Force>;
if v == v goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiProcessor processor>;
if v != null goto label;
label:
v = new org.fusesource.jansi.io.ColorsAnsiProcessor;
v = v;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.io.OutputStream out>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.AnsiColors colors>;
specialinvoke v.<org.fusesource.jansi.io.ColorsAnsiProcessor: void <init>(java.io.OutputStream,org.fusesource.jansi.AnsiColors)>(v, v);
goto label;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiProcessor processor>;
label:
v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiProcessor ap> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.AnsiMode mode> = v;
return;
}
public boolean isResetAtUninstall()
{
org.fusesource.jansi.io.AnsiOutputStream v;
boolean v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: boolean resetAtUninstall>;
return v;
}
public void setResetAtUninstall(boolean)
{
org.fusesource.jansi.io.AnsiOutputStream v;
boolean v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v := @parameter: boolean;
v.<org.fusesource.jansi.io.AnsiOutputStream: boolean resetAtUninstall> = v;
return;
}
public void write(int) throws java.io.IOException
{
byte[] v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Integer v, v, v, v;
java.lang.Character v, v, v;
java.util.ArrayList v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v;
org.fusesource.jansi.io.AnsiOutputStream v;
java.nio.charset.Charset v, v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.io.OutputStream v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v := @parameter: int;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int state>;
tableswitch(v)
{
case 0: goto label;
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
case 9: goto label;
default: goto label;
};
label:
if v != 27 goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v + 1;
v.<org.fusesource.jansi.io.AnsiOutputStream: int pos> = v;
v[v] = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 1;
goto label;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.io.OutputStream out>;
virtualinvoke v.<java.io.OutputStream: void write(int)>(v);
goto label;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v + 1;
v.<org.fusesource.jansi.io.AnsiOutputStream: int pos> = v;
v[v] = v;
if v != 91 goto label;
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 2;
goto label;
label:
if v != 93 goto label;
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 5;
goto label;
label:
if v != 40 goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(0);
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 9;
goto label;
label:
if v != 41 goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(1);
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 9;
goto label;
label:
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void reset(boolean)>(0);
goto label;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v + 1;
v.<org.fusesource.jansi.io.AnsiOutputStream: int pos> = v;
v[v] = v;
if 34 != v goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v - 1;
v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 3;
goto label;
label:
if 48 > v goto label;
if v > 57 goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v - 1;
v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 4;
goto label;
label:
if 59 != v goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(null);
goto label;
label:
if 63 != v goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
v = staticinvoke <java.lang.Character: java.lang.Character valueOf(char)>(63);
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
goto label;
label:
if 61 != v goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
v = staticinvoke <java.lang.Character: java.lang.Character valueOf(char)>(61);
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
goto label;
label:
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void processEscapeCommand(int)>(v);
goto label;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v + 1;
v.<org.fusesource.jansi.io.AnsiOutputStream: int pos> = v;
v[v] = v;
if 48 > v goto label;
if v <= 57 goto label;
label:
v = new java.lang.String;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v - 1;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue>;
v = v - v;
specialinvoke v.<java.lang.String: void <init>(byte[],int,int)>(v, v, v);
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(java.lang.String)>(v);
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
if v != 59 goto label;
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 2;
goto label;
label:
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void processEscapeCommand(int)>(v);
goto label;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v + 1;
v.<org.fusesource.jansi.io.AnsiOutputStream: int pos> = v;
v[v] = v;
if 34 == v goto label;
v = new java.lang.String;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v - 1;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue>;
v = v - v;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.nio.charset.Charset cs>;
specialinvoke v.<java.lang.String: void <init>(byte[],int,int,java.nio.charset.Charset)>(v, v, v, v);
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
if v != 59 goto label;
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 2;
goto label;
label:
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void processEscapeCommand(int)>(v);
goto label;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v + 1;
v.<org.fusesource.jansi.io.AnsiOutputStream: int pos> = v;
v[v] = v;
if 48 > v goto label;
if v > 57 goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v - 1;
v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 6;
goto label;
label:
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void reset(boolean)>(0);
goto label;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v + 1;
v.<org.fusesource.jansi.io.AnsiOutputStream: int pos> = v;
v[v] = v;
if 59 != v goto label;
v = new java.lang.String;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v - 1;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue>;
v = v - v;
specialinvoke v.<java.lang.String: void <init>(byte[],int,int)>(v, v, v);
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(java.lang.String)>(v);
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue> = v;
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 7;
goto label;
label:
if 48 > v goto label;
if v <= 57 goto label;
label:
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void reset(boolean)>(0);
goto label;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v + 1;
v.<org.fusesource.jansi.io.AnsiOutputStream: int pos> = v;
v[v] = v;
if 7 != v goto label;
v = new java.lang.String;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v - 1;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue>;
v = v - v;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.nio.charset.Charset cs>;
specialinvoke v.<java.lang.String: void <init>(byte[],int,int,java.nio.charset.Charset)>(v, v, v, v);
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void processOperatingSystemCommand()>();
goto label;
label:
if 27 != v goto label;
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 8;
goto label;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v + 1;
v.<org.fusesource.jansi.io.AnsiOutputStream: int pos> = v;
v[v] = v;
if 92 != v goto label;
v = new java.lang.String;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v - 2;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue>;
v = v - v;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.nio.charset.Charset cs>;
specialinvoke v.<java.lang.String: void <init>(byte[],int,int,java.nio.charset.Charset)>(v, v, v, v);
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void processOperatingSystemCommand()>();
goto label;
label:
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 7;
goto label;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
v = staticinvoke <java.lang.Character: java.lang.Character valueOf(char)>(v);
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void processCharsetSelect()>();
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = lengthof v;
if v < v goto label;
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void reset(boolean)>(0);
label:
return;
}
private void processCharsetSelect() throws java.io.IOException
{
org.fusesource.jansi.io.AnsiOutputStream v;
org.fusesource.jansi.io.AnsiProcessor v, v;
java.lang.RuntimeException v;
boolean v, v;
java.util.ArrayList v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiProcessor ap>;
if v == null goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiProcessor ap>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
v = virtualinvoke v.<org.fusesource.jansi.io.AnsiProcessor: boolean processCharsetSelect(java.util.ArrayList)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void reset(boolean)>(v);
label:
goto label;
label:
v := @caughtexception;
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void reset(boolean)>(1);
throw v;
label:
return;
catch java.lang.RuntimeException from label to label with label;
}
private void processOperatingSystemCommand() throws java.io.IOException
{
org.fusesource.jansi.io.AnsiOutputStream v;
org.fusesource.jansi.io.AnsiProcessor v, v;
java.lang.RuntimeException v;
boolean v, v;
java.util.ArrayList v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiProcessor ap>;
if v == null goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiProcessor ap>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
v = virtualinvoke v.<org.fusesource.jansi.io.AnsiProcessor: boolean processOperatingSystemCommand(java.util.ArrayList)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void reset(boolean)>(v);
label:
goto label;
label:
v := @caughtexception;
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void reset(boolean)>(1);
throw v;
label:
return;
catch java.lang.RuntimeException from label to label with label;
}
private void processEscapeCommand(int) throws java.io.IOException
{
org.fusesource.jansi.io.AnsiProcessor v, v;
java.lang.RuntimeException v;
java.util.ArrayList v;
org.fusesource.jansi.io.AnsiOutputStream v;
int v;
boolean v, v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v := @parameter: int;
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiProcessor ap>;
if v == null goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiProcessor ap>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
v = virtualinvoke v.<org.fusesource.jansi.io.AnsiProcessor: boolean processEscapeCommand(java.util.ArrayList,int)>(v, v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void reset(boolean)>(v);
label:
goto label;
label:
v := @caughtexception;
specialinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void reset(boolean)>(1);
throw v;
label:
return;
catch java.lang.RuntimeException from label to label with label;
}
private void reset(boolean) throws java.io.IOException
{
java.io.OutputStream v;
org.fusesource.jansi.io.AnsiOutputStream v;
byte[] v;
int v;
boolean v;
java.util.ArrayList v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v := @parameter: boolean;
if v != 0 goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.io.OutputStream out>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: byte[] buffer>;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: int pos>;
virtualinvoke v.<java.io.OutputStream: void write(byte[],int,int)>(v, 0, v);
label:
v.<org.fusesource.jansi.io.AnsiOutputStream: int pos> = 0;
v.<org.fusesource.jansi.io.AnsiOutputStream: int startOfValue> = 0;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: java.util.ArrayList options>;
virtualinvoke v.<java.util.ArrayList: void clear()>();
v.<org.fusesource.jansi.io.AnsiOutputStream: int state> = 0;
return;
}
public void install() throws java.io.IOException
{
org.fusesource.jansi.io.AnsiOutputStream v;
org.fusesource.jansi.io.AnsiOutputStream$IoRunnable v, v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiOutputStream$IoRunnable installer>;
if v == null goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiOutputStream$IoRunnable installer>;
interfaceinvoke v.<org.fusesource.jansi.io.AnsiOutputStream$IoRunnable: void run()>();
label:
return;
}
public void uninstall() throws java.io.IOException
{
byte[] v;
org.fusesource.jansi.AnsiType v, v, v, v;
org.fusesource.jansi.AnsiMode v;
org.fusesource.jansi.io.AnsiOutputStream$IoRunnable v, v;
org.fusesource.jansi.io.AnsiOutputStream v;
boolean v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: boolean resetAtUninstall>;
if v == 0 goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.AnsiType type>;
v = <org.fusesource.jansi.AnsiType: org.fusesource.jansi.AnsiType Redirected>;
if v == v goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.AnsiType type>;
v = <org.fusesource.jansi.AnsiType: org.fusesource.jansi.AnsiType Unsupported>;
if v == v goto label;
v = <org.fusesource.jansi.AnsiMode: org.fusesource.jansi.AnsiMode Default>;
virtualinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void setMode(org.fusesource.jansi.AnsiMode)>(v);
v = <org.fusesource.jansi.io.AnsiOutputStream: byte[] RESET_CODE>;
virtualinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void write(byte[])>(v);
virtualinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void flush()>();
label:
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiOutputStream$IoRunnable uninstaller>;
if v == null goto label;
v = v.<org.fusesource.jansi.io.AnsiOutputStream: org.fusesource.jansi.io.AnsiOutputStream$IoRunnable uninstaller>;
interfaceinvoke v.<org.fusesource.jansi.io.AnsiOutputStream$IoRunnable: void run()>();
label:
return;
}
public void close() throws java.io.IOException
{
org.fusesource.jansi.io.AnsiOutputStream v;
v := @this: org.fusesource.jansi.io.AnsiOutputStream;
virtualinvoke v.<org.fusesource.jansi.io.AnsiOutputStream: void uninstall()>();
specialinvoke v.<java.io.FilterOutputStream: void close()>();
return;
}
static void <clinit>()
{
byte[] v;
java.lang.String v;
v = "\u001b[0m";
v = virtualinvoke v.<java.lang.String: byte[] getBytes()>();
<org.fusesource.jansi.io.AnsiOutputStream: byte[] RESET_CODE> = v;
return;
}
}