org.luaj.vm2
Class Print

java.lang.Object
  extended by org.luaj.vm2.Lua
      extended by org.luaj.vm2.Print

public class Print
extends Lua

Debug helper class to pretty-print lua bytecodes.

See Also:
Prototype, LuaClosure

Field Summary
static java.lang.String[] OPNAMES
           
static java.io.PrintStream ps
           
 
Fields inherited from class org.luaj.vm2.Lua
_VERSION, BITRK, iABC, iABx, iAsBx, LFIELDS_PER_FLUSH, LUA_MULTRET, luaP_opmodes, MASK_A, MASK_B, MASK_Bx, MASK_C, MASK_NOT_A, MASK_NOT_B, MASK_NOT_Bx, MASK_NOT_C, MASK_NOT_OP, MASK_OP, MAX_OP, MAXARG_A, MAXARG_B, MAXARG_Bx, MAXARG_C, MAXARG_sBx, MAXINDEXRK, NO_REG, NUM_OPCODES, OP_ADD, OP_AND, OP_CALL, OP_CLOSE, OP_CLOSURE, OP_CONCAT, OP_DIV, OP_EQ, OP_FORLOOP, OP_FORPREP, OP_GE, OP_GETGLOBAL, OP_GETTABLE, OP_GETUPVAL, OP_GT, OP_JMP, OP_LE, OP_LEN, OP_LOADBOOL, OP_LOADK, OP_LOADNIL, OP_LT, OP_MOD, OP_MOVE, OP_MUL, OP_NEQ, OP_NEWTABLE, OP_NOT, OP_OR, OP_POW, OP_RETURN, OP_SELF, OP_SETGLOBAL, OP_SETLIST, OP_SETTABLE, OP_SETUPVAL, OP_SUB, OP_TAILCALL, OP_TEST, OP_TESTSET, OP_TFORLOOP, OP_UNM, OP_VARARG, OpArgK, OpArgN, OpArgR, OpArgU, POS_A, POS_B, POS_Bx, POS_C, POS_OP, SIZE_A, SIZE_B, SIZE_Bx, SIZE_C, SIZE_OP, VARARG_HASARG, VARARG_ISVARARG, VARARG_NEEDSARG
 
Constructor Summary
Print()
           
 
Method Summary
static void print(Prototype p)
           
static void printCode(Prototype f)
          Print the code in a prototype
static void printFunction(Prototype f, boolean full)
           
static void printOpCode(java.io.PrintStream ps, Prototype f, int pc)
          Print an opcode in a prototype
static void printOpCode(Prototype f, int pc)
          Print an opcode in a prototype
static void printState(LuaClosure cl, int pc, LuaValue[] stack, int top, Varargs varargs)
          Print the state of a LuaClosure that is being executed
 
Methods inherited from class org.luaj.vm2.Lua
GET_OPCODE, GETARG_A, GETARG_B, GETARG_Bx, GETARG_C, GETARG_sBx, getBMode, getCMode, getOpMode, INDEXK, ISK, RKASK, testAMode, testTMode
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ps

public static java.io.PrintStream ps

OPNAMES

public static final java.lang.String[] OPNAMES
Constructor Detail

Print

public Print()
Method Detail

printCode

public static void printCode(Prototype f)
Print the code in a prototype

Parameters:
f - the Prototype

printOpCode

public static void printOpCode(Prototype f,
                               int pc)
Print an opcode in a prototype

Parameters:
f - the Prototype
pc - the program counter to look up and print

printOpCode

public static void printOpCode(java.io.PrintStream ps,
                               Prototype f,
                               int pc)
Print an opcode in a prototype

Parameters:
ps - the PrintStream to print to
f - the Prototype
pc - the program counter to look up and print

print

public static void print(Prototype p)

printFunction

public static void printFunction(Prototype f,
                                 boolean full)

printState

public static void printState(LuaClosure cl,
                              int pc,
                              LuaValue[] stack,
                              int top,
                              Varargs varargs)
Print the state of a LuaClosure that is being executed

Parameters:
cl - the LuaClosure
pc - the program counter
stack - the stack of LuaValue
top - the top of the stack
varargs - any Varargs value that may apply


Copyright © 2007-2008 Luaj.org. All Rights Reserved.