public class jtermios.macosx.JTermiosImpl implements jtermios.JTermios$JTermiosInterface
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jtermios.macosx.JTermiosImpl
super_class: java.lang.Object
{
private static int IOSSIOSPEED;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.lang.String DEVICE_DIR_PATH;
descriptor: Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static jtermios.macosx.JTermiosImpl$C_lib_DirectMapping m_ClibDM;
descriptor: Ljtermios/macosx/JTermiosImpl$C_lib_DirectMapping;
flags: (0x0008) ACC_STATIC
static jtermios.macosx.JTermiosImpl$C_lib m_Clib;
descriptor: Ljtermios/macosx/JTermiosImpl$C_lib;
flags: (0x0008) ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc -2147199998
putstatic jtermios.macosx.JTermiosImpl.IOSSIOSPEED:I
1: ldc "/dev/"
putstatic jtermios.macosx.JTermiosImpl.DEVICE_DIR_PATH:Ljava/lang/String;
2: iconst_1
invokestatic com.sun.jna.Native.setPreserveLastError:(Z)V
3: ldc Ljtermios/macosx/JTermiosImpl$C_lib_DirectMapping;
getstatic com.sun.jna.Platform.C_LIBRARY_NAME:Ljava/lang/String;
invokestatic com.sun.jna.NativeLibrary.getInstance:(Ljava/lang/String;)Lcom/sun/jna/NativeLibrary;
invokestatic com.sun.jna.Native.register:(Ljava/lang/Class;Lcom/sun/jna/NativeLibrary;)V
4: new jtermios.macosx.JTermiosImpl$C_lib_DirectMapping
dup
invokespecial jtermios.macosx.JTermiosImpl$C_lib_DirectMapping.<init>:()V
putstatic jtermios.macosx.JTermiosImpl.m_ClibDM:Ljtermios/macosx/JTermiosImpl$C_lib_DirectMapping;
5: getstatic jtermios.macosx.JTermiosImpl.m_ClibDM:Ljtermios/macosx/JTermiosImpl$C_lib_DirectMapping;
putstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
6: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: getstatic jtermios.JTermios$JTermiosLogging.log:Z
ifeq 2
iconst_1
ldc "instantiating %s\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getCanonicalName:()Ljava/lang/String;
aastore
invokestatic jtermios.JTermios$JTermiosLogging.log:(ILjava/lang/String;[Ljava/lang/Object;)Z
ifeq 2
iconst_1
goto 3
StackMap locals: jtermios.macosx.JTermiosImpl
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: putstatic jtermios.JTermios$JTermiosLogging.log:Z
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljtermios/macosx/JTermiosImpl;
public int errno();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic com.sun.jna.Native.getLastError:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
public void cfmakeraw(jtermios.Termios);
descriptor: (Ljtermios/Termios;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: new jtermios.macosx.JTermiosImpl$termios
dup
aload 1
invokespecial jtermios.macosx.JTermiosImpl$termios.<init>:(Ljtermios/Termios;)V
astore 2
start local 2 1: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
aload 2
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.cfmakeraw:(Ljtermios/macosx/JTermiosImpl$termios;)V
2: aload 2
aload 1
invokevirtual jtermios.macosx.JTermiosImpl$termios.update:(Ljtermios/Termios;)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljtermios/macosx/JTermiosImpl;
0 4 1 termios Ljtermios/Termios;
1 4 2 t Ljtermios/macosx/JTermiosImpl$termios;
MethodParameters:
Name Flags
termios
public int fcntl(int, int, int);
descriptor: (III)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
iload 1
iload 2
iload 3
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.fcntl:(III)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 fd I
0 1 2 cmd I
0 1 3 arg I
MethodParameters:
Name Flags
fd
cmd
arg
public int tcdrain(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
iload 1
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.tcdrain:(I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 fd I
MethodParameters:
Name Flags
fd
public int cfgetispeed(jtermios.Termios);
descriptor: (Ljtermios/Termios;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
new jtermios.macosx.JTermiosImpl$termios
dup
aload 1
invokespecial jtermios.macosx.JTermiosImpl$termios.<init>:(Ljtermios/Termios;)V
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.cfgetispeed:(Ljtermios/macosx/JTermiosImpl$termios;)Lcom/sun/jna/NativeLong;
invokevirtual com.sun.jna.NativeLong.intValue:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 termios Ljtermios/Termios;
MethodParameters:
Name Flags
termios
public int cfgetospeed(jtermios.Termios);
descriptor: (Ljtermios/Termios;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
new jtermios.macosx.JTermiosImpl$termios
dup
aload 1
invokespecial jtermios.macosx.JTermiosImpl$termios.<init>:(Ljtermios/Termios;)V
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.cfgetospeed:(Ljtermios/macosx/JTermiosImpl$termios;)Lcom/sun/jna/NativeLong;
invokevirtual com.sun.jna.NativeLong.intValue:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 termios Ljtermios/Termios;
MethodParameters:
Name Flags
termios
public int cfsetispeed(jtermios.Termios, int);
descriptor: (Ljtermios/Termios;I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new jtermios.macosx.JTermiosImpl$termios
dup
aload 1
invokespecial jtermios.macosx.JTermiosImpl$termios.<init>:(Ljtermios/Termios;)V
astore 3
start local 3 1: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
aload 3
new com.sun.jna.NativeLong
dup
iload 2
i2l
invokespecial com.sun.jna.NativeLong.<init>:(J)V
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.cfsetispeed:(Ljtermios/macosx/JTermiosImpl$termios;Lcom/sun/jna/NativeLong;)I
istore 4
start local 4 2: aload 3
aload 1
invokevirtual jtermios.macosx.JTermiosImpl$termios.update:(Ljtermios/Termios;)V
3: iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljtermios/macosx/JTermiosImpl;
0 4 1 termios Ljtermios/Termios;
0 4 2 speed I
1 4 3 t Ljtermios/macosx/JTermiosImpl$termios;
2 4 4 ret I
MethodParameters:
Name Flags
termios
speed
public int cfsetospeed(jtermios.Termios, int);
descriptor: (Ljtermios/Termios;I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new jtermios.macosx.JTermiosImpl$termios
dup
aload 1
invokespecial jtermios.macosx.JTermiosImpl$termios.<init>:(Ljtermios/Termios;)V
astore 3
start local 3 1: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
aload 3
new com.sun.jna.NativeLong
dup
iload 2
i2l
invokespecial com.sun.jna.NativeLong.<init>:(J)V
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.cfsetospeed:(Ljtermios/macosx/JTermiosImpl$termios;Lcom/sun/jna/NativeLong;)I
istore 4
start local 4 2: aload 3
aload 1
invokevirtual jtermios.macosx.JTermiosImpl$termios.update:(Ljtermios/Termios;)V
3: iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljtermios/macosx/JTermiosImpl;
0 4 1 termios Ljtermios/Termios;
0 4 2 speed I
1 4 3 t Ljtermios/macosx/JTermiosImpl$termios;
2 4 4 ret I
MethodParameters:
Name Flags
termios
speed
public int open(java.lang.String, int);
descriptor: (Ljava/lang/String;I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 2
aload 1
ldc "/"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 2
1: new java.lang.StringBuilder
dup
getstatic jtermios.macosx.JTermiosImpl.DEVICE_DIR_PATH:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
2: StackMap locals:
StackMap stack:
getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
aload 1
iload 2
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.open:(Ljava/lang/String;I)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljtermios/macosx/JTermiosImpl;
0 3 1 s Ljava/lang/String;
0 3 2 t I
MethodParameters:
Name Flags
s
t
public int read(int, byte[], int);
descriptor: (I[BI)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
iload 1
aload 2
new jtermios.JTermios$JTermiosInterface$NativeSize
dup
iload 3
i2l
invokespecial jtermios.JTermios$JTermiosInterface$NativeSize.<init>:(J)V
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.read:(I[BLjtermios/JTermios$JTermiosInterface$NativeSize;)Ljtermios/JTermios$JTermiosInterface$NativeSize;
invokevirtual jtermios.JTermios$JTermiosInterface$NativeSize.intValue:()I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 fd I
0 1 2 buffer [B
0 1 3 len I
MethodParameters:
Name Flags
fd
buffer
len
public int write(int, byte[], int);
descriptor: (I[BI)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
iload 1
aload 2
new jtermios.JTermios$JTermiosInterface$NativeSize
dup
iload 3
i2l
invokespecial jtermios.JTermios$JTermiosInterface$NativeSize.<init>:(J)V
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.write:(I[BLjtermios/JTermios$JTermiosInterface$NativeSize;)Ljtermios/JTermios$JTermiosInterface$NativeSize;
invokevirtual jtermios.JTermios$JTermiosInterface$NativeSize.intValue:()I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 fd I
0 1 2 buffer [B
0 1 3 len I
MethodParameters:
Name Flags
fd
buffer
len
public int close(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
iload 1
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.close:(I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 fd I
MethodParameters:
Name Flags
fd
public int tcflush(int, int);
descriptor: (II)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
iload 1
iload 2
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.tcflush:(II)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 fd I
0 1 2 b I
MethodParameters:
Name Flags
fd
b
public int tcgetattr(int, jtermios.Termios);
descriptor: (ILjtermios/Termios;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new jtermios.macosx.JTermiosImpl$termios
dup
invokespecial jtermios.macosx.JTermiosImpl$termios.<init>:()V
astore 3
start local 3 1: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
iload 1
aload 3
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.tcgetattr:(ILjtermios/macosx/JTermiosImpl$termios;)I
istore 4
start local 4 2: aload 3
aload 2
invokevirtual jtermios.macosx.JTermiosImpl$termios.update:(Ljtermios/Termios;)V
3: iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljtermios/macosx/JTermiosImpl;
0 4 1 fd I
0 4 2 termios Ljtermios/Termios;
1 4 3 t Ljtermios/macosx/JTermiosImpl$termios;
2 4 4 ret I
MethodParameters:
Name Flags
fd
termios
public void perror(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
aload 1
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.perror:(Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljtermios/macosx/JTermiosImpl;
0 2 1 msg Ljava/lang/String;
MethodParameters:
Name Flags
msg
public int tcsendbreak(int, int);
descriptor: (II)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
iload 1
iload 2
sipush 250
idiv
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.tcsendbreak:(II)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 fd I
0 1 2 duration I
MethodParameters:
Name Flags
fd
duration
public int tcsetattr(int, int, jtermios.Termios);
descriptor: (IILjtermios/Termios;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
iload 1
iload 2
new jtermios.macosx.JTermiosImpl$termios
dup
aload 3
invokespecial jtermios.macosx.JTermiosImpl$termios.<init>:(Ljtermios/Termios;)V
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.tcsetattr:(IILjtermios/macosx/JTermiosImpl$termios;)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 fd I
0 1 2 cmd I
0 1 3 termios Ljtermios/Termios;
MethodParameters:
Name Flags
fd
cmd
termios
public int select(int, jtermios.JTermios$FDSet, jtermios.JTermios$FDSet, jtermios.JTermios$FDSet, jtermios.TimeVal);
descriptor: (ILjtermios/JTermios$FDSet;Ljtermios/JTermios$FDSet;Ljtermios/JTermios$FDSet;Ljtermios/TimeVal;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aconst_null
astore 6
start local 6 1: aload 5
ifnull 3
2: new jtermios.macosx.JTermiosImpl$timeval
dup
aload 5
invokespecial jtermios.macosx.JTermiosImpl$timeval.<init>:(Ljtermios/TimeVal;)V
astore 6
3: StackMap locals: jtermios.macosx.JTermiosImpl$timeval
StackMap stack:
getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
iload 1
aload 2
checkcast jtermios.macosx.JTermiosImpl$fd_set
aload 3
checkcast jtermios.macosx.JTermiosImpl$fd_set
aload 4
checkcast jtermios.macosx.JTermiosImpl$fd_set
aload 6
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.select:(ILjtermios/macosx/JTermiosImpl$fd_set;Ljtermios/macosx/JTermiosImpl$fd_set;Ljtermios/macosx/JTermiosImpl$fd_set;Ljtermios/macosx/JTermiosImpl$timeval;)I
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljtermios/macosx/JTermiosImpl;
0 4 1 nfds I
0 4 2 rfds Ljtermios/JTermios$FDSet;
0 4 3 wfds Ljtermios/JTermios$FDSet;
0 4 4 efds Ljtermios/JTermios$FDSet;
0 4 5 timeout Ljtermios/TimeVal;
1 4 6 tout Ljtermios/macosx/JTermiosImpl$timeval;
MethodParameters:
Name Flags
nfds
rfds
wfds
efds
timeout
public int poll(jtermios.Pollfd[], int, int);
descriptor: ([Ljtermios/Pollfd;II)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.lang.UnsupportedOperationException
dup
ldc "Poll not supported"
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 fds [Ljtermios/Pollfd;
0 1 2 nfds I
0 1 3 timeout I
MethodParameters:
Name Flags
fds
nfds
timeout
public boolean canPoll();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
public jtermios.JTermios$FDSet newFDSet();
descriptor: ()Ljtermios/JTermios$FDSet;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new jtermios.macosx.JTermiosImpl$fd_set
dup
invokespecial jtermios.macosx.JTermiosImpl$fd_set.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
public int ioctl(int, int, int[]);
descriptor: (II[I)I
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=8, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
iload 1
new com.sun.jna.NativeLong
dup
ldc 4294967295
iload 2
i2l
land
invokespecial com.sun.jna.NativeLong.<init>:(J)V
aload 3
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.ioctl:(ILcom/sun/jna/NativeLong;[I)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 fd I
0 1 2 cmd I
0 1 3 data [I
MethodParameters:
Name Flags
fd
cmd
data
public java.util.List<java.lang.String> getPortList();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=1
start local 0 0: new java.io.File
dup
getstatic jtermios.macosx.JTermiosImpl.DEVICE_DIR_PATH:Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 1
start local 1 1: aload 1
invokevirtual java.io.File.isDirectory:()Z
ifne 6
2: getstatic jtermios.JTermios$JTermiosLogging.log:Z
ifeq 3
iconst_1
ldc "device directory %s does not exist\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
getstatic jtermios.macosx.JTermiosImpl.DEVICE_DIR_PATH:Ljava/lang/String;
aastore
invokestatic jtermios.JTermios$JTermiosLogging.log:(ILjava/lang/String;[Ljava/lang/Object;)Z
ifeq 3
iconst_1
goto 4
StackMap locals: java.io.File
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: putstatic jtermios.JTermios$JTermiosLogging.log:Z
5: aconst_null
areturn
6: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.io.File.list:()[Ljava/lang/String;
astore 2
start local 2 7: new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
astore 3
start local 3 8: aload 0
invokestatic jtermios.JTermios.getPortNamePattern:(Ljtermios/JTermios$JTermiosInterface;)Ljava/util/regex/Pattern;
astore 4
start local 4 9: aload 2
ifnull 17
10: iconst_0
istore 5
start local 5 11: goto 16
12: StackMap locals: jtermios.macosx.JTermiosImpl java.io.File java.lang.String[] java.util.LinkedList java.util.regex.Pattern int
StackMap stack:
aload 2
iload 5
aaload
astore 6
start local 6 13: aload 4
aload 6
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
invokevirtual java.util.regex.Matcher.matches:()Z
ifeq 15
14: aload 3
aload 6
invokevirtual java.util.LinkedList.add:(Ljava/lang/Object;)Z
pop
end local 6 15: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
16: iload 5
aload 2
arraylength
if_icmplt 12
end local 5 17: StackMap locals:
StackMap stack:
aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Ljtermios/macosx/JTermiosImpl;
1 18 1 dir Ljava/io/File;
7 18 2 devs [Ljava/lang/String;
8 18 3 list Ljava/util/LinkedList<Ljava/lang/String;>;
9 18 4 p Ljava/util/regex/Pattern;
11 17 5 i I
13 15 6 s Ljava/lang/String;
Signature: ()Ljava/util/List<Ljava/lang/String;>;
public java.lang.String getPortNamePattern();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "^(tty\\.|cu\\.).*"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
public void shutDown();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
public int setspeed(int, jtermios.Termios, int);
descriptor: (ILjtermios/Termios;I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 2
iload 3
invokevirtual jtermios.macosx.JTermiosImpl.cfsetispeed:(Ljtermios/Termios;I)I
istore 4
start local 4 1: iload 4
ifne 3
2: aload 0
aload 2
iload 3
invokevirtual jtermios.macosx.JTermiosImpl.cfsetospeed:(Ljtermios/Termios;I)I
istore 4
3: StackMap locals: int
StackMap stack:
iload 4
ifne 5
4: aload 0
iload 1
getstatic jtermios.JTermios.TCSANOW:I
aload 2
invokevirtual jtermios.macosx.JTermiosImpl.tcsetattr:(IILjtermios/Termios;)I
istore 4
5: StackMap locals:
StackMap stack:
iload 4
ifeq 8
6: aload 0
aload 2
getstatic jtermios.JTermios.B9600:I
invokevirtual jtermios.macosx.JTermiosImpl.cfsetispeed:(Ljtermios/Termios;I)I
ifne 8
aload 0
aload 2
getstatic jtermios.JTermios.B9600:I
invokevirtual jtermios.macosx.JTermiosImpl.cfsetospeed:(Ljtermios/Termios;I)I
ifne 8
aload 0
iload 1
getstatic jtermios.JTermios.TCSANOW:I
aload 2
invokevirtual jtermios.macosx.JTermiosImpl.tcsetattr:(IILjtermios/Termios;)I
ifne 8
7: aload 0
iload 1
getstatic jtermios.macosx.JTermiosImpl.IOSSIOSPEED:I
iconst_1
newarray 10
dup
iconst_0
iload 3
iastore
invokevirtual jtermios.macosx.JTermiosImpl.ioctl:(II[I)I
istore 4
8: StackMap locals:
StackMap stack:
iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljtermios/macosx/JTermiosImpl;
0 9 1 fd I
0 9 2 termios Ljtermios/Termios;
0 9 3 speed I
1 9 4 r I
MethodParameters:
Name Flags
fd
termios
speed
public int pipe(int[]);
descriptor: ([I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic jtermios.macosx.JTermiosImpl.m_Clib:Ljtermios/macosx/JTermiosImpl$C_lib;
aload 1
invokeinterface jtermios.macosx.JTermiosImpl$C_lib.pipe:([I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljtermios/macosx/JTermiosImpl;
0 1 1 fds [I
MethodParameters:
Name Flags
fds
}
SourceFile: "JTermiosImpl.java"
NestMembers:
jtermios.macosx.JTermiosImpl$C_lib jtermios.macosx.JTermiosImpl$C_lib_DirectMapping jtermios.macosx.JTermiosImpl$fd_set jtermios.macosx.JTermiosImpl$pollfd jtermios.macosx.JTermiosImpl$pollfd$ByReference jtermios.macosx.JTermiosImpl$termios jtermios.macosx.JTermiosImpl$timeval
InnerClasses:
public abstract FDSet = jtermios.JTermios$FDSet of jtermios.JTermios
public abstract JTermiosInterface = jtermios.JTermios$JTermiosInterface of jtermios.JTermios
public NativeSize = jtermios.JTermios$JTermiosInterface$NativeSize of jtermios.JTermios$JTermiosInterface
public JTermiosLogging = jtermios.JTermios$JTermiosLogging of jtermios.JTermios
public abstract C_lib = jtermios.macosx.JTermiosImpl$C_lib of jtermios.macosx.JTermiosImpl
public C_lib_DirectMapping = jtermios.macosx.JTermiosImpl$C_lib_DirectMapping of jtermios.macosx.JTermiosImpl
public fd_set = jtermios.macosx.JTermiosImpl$fd_set of jtermios.macosx.JTermiosImpl
public pollfd = jtermios.macosx.JTermiosImpl$pollfd of jtermios.macosx.JTermiosImpl
public termios = jtermios.macosx.JTermiosImpl$termios of jtermios.macosx.JTermiosImpl
public timeval = jtermios.macosx.JTermiosImpl$timeval of jtermios.macosx.JTermiosImpl