org.python.compiler
Class CodeCompiler

java.lang.Object
  extended byorg.python.parser.Visitor
      extended byorg.python.compiler.CodeCompiler
All Implemented Interfaces:
ClassConstants, CompilationContext, PythonGrammarTreeConstants

public class CodeCompiler
extends Visitor
implements CompilationContext, ClassConstants, PythonGrammarTreeConstants


Field Summary
 int add_traceback
           
 int assert1
           
 int assert2
           
static int AUGGET
           
static int AUGSET
           
 Integer bidiredge
           
 Stack breakLabels
           
 int call1
           
 int call2
           
 int calla0
           
 int calla1
           
 int calla2
           
 int calla3
           
 int calla4
           
 int callextra
           
 String className
           
 Code code
           
 Stack continueLabels
           
static int DEL
           
 int delattr
           
 int delitem
           
 int delslice
           
static Object DoFinally
           
 int Ellipsis
           
 int EmptyObjects
           
 Integer equal
           
 int exec
           
static Object Exit
           
 boolean fast_locals
           
 Stack finallyLabels
           
 Future futures
           
static int GET
           
 int getattr
           
 int getitem
           
 int getitem2
           
 int getslice
           
 Integer greater
           
 Integer greater_equal
           
 int importAll
           
 int importFrom
           
 int importOne
           
 int importOneAs
           
 Integer in
           
 int invoke2
           
 int invokea0
           
 int invokea1
           
 int invokea2
           
 Integer is
           
 Integer is_not
           
 Integer leftdiredge
           
 Integer less
           
 Integer less_equal
           
 Integer like
           
 Stack listComprehensionAppends
           
 Stack listComprehensionExprs
           
 int makeClass
           
 int makeClass_closure
           
 int makeException0
           
 int makeException1
           
 int makeException2
           
 int makeException3
           
 int match_exception
           
 Module module
           
 CodeCompiler mrefs
           
 ScopeInfo my_scope
           
 Vector names
           
static Object NoExit
           
 int nonzero
           
 Integer not_in
           
 Integer notequal
           
 ConstantPool pool
           
 boolean print_results
           
 int print1
           
 int print2
           
 int print3
           
 int print4
           
 int print5
           
 int print6
           
 int printResult
           
 int PyDictionary_init
           
 int PyFunction_closure_init1
           
 int PyFunction_init1
           
 int PyList_init
           
 int PyList_init2
           
 int PyNone
           
 int PySlice_init
           
 int PyTuple_init
           
 Integer questionm
           
 Integer rcontained
           
 Integer rcontains
           
 Integer rexact
           
 Integer rightdiredge
           
 Integer roverlaps
           
 int safe_getitem
           
static int SET
           
 int set_exception
           
 int setattr
           
 int setitem
           
 int setline
           
 int setslice
           
 Hashtable tbl
           
 int unpackSequence
           
 
Fields inherited from interface org.python.compiler.ClassConstants
$clss, $obj, $objArr, $pyCode, $pyComplex, $pyExc, $pyFloat, $pyFrame, $pyFuncTbl, $pyInteger, $pyLong, $pyObj, $pyObjArr, $pyProxy, $pyRunnable, $pyStr, $str, $strArr, $throwable
 
Fields inherited from interface org.python.parser.PythonGrammarTreeConstants
JJTADD_2OP, JJTAND_2OP, JJTAND_BOOLEAN, JJTARGLIST, JJTASSERT_STMT, JJTAUG_AND, JJTAUG_DIVIDE, JJTAUG_LSHIFT, JJTAUG_MINUS, JJTAUG_MODULO, JJTAUG_MULTIPLY, JJTAUG_OR, JJTAUG_PLUS, JJTAUG_POWER, JJTAUG_RSHIFT, JJTAUG_XOR, JJTBIDIREDGE, JJTBREAK_STMT, JJTCALL_OP, JJTCLASSDEF, JJTCOLON, JJTCOMMA, JJTCOMPARISION, JJTCOMPLEX, JJTCONTINUE_STMT, JJTDEFAULTARG, JJTDEL_STMT, JJTDICTIONARY, JJTDIV_2OP, JJTDOT_OP, JJTDOTTED_AS_NAME, JJTDOTTED_NAME, JJTELLIPSES, JJTEQUAL_CMP, JJTEVAL_INPUT, JJTEXCEPT_CLAUSE, JJTEXEC_STMT, JJTEXPR_STMT, JJTEXTRAARGLIST, JJTEXTRAARGVALUELIST, JJTEXTRAKEYWORDLIST, JJTEXTRAKEYWORDVALUELIST, JJTFILE_INPUT, JJTFLOAT, JJTFOR_STMT, JJTFPLIST, JJTFUNCDEF, JJTGLOBAL_STMT, JJTGREATER_CMP, JJTGREATER_EQUAL_CMP, JJTIF_STMT, JJTIMPORT, JJTIMPORT_AS_NAME, JJTIMPORTFROM, JJTIN_CMP, JJTINDEX_OP, JJTINT, JJTINVERT_1OP, JJTIS_CMP, JJTIS_NOT_CMP, JJTKEYWORD, JJTLAMBDEF, JJTLEFTDIREDGE, JJTLESS_CMP, JJTLESS_EQUAL_CMP, JJTLIKE, JJTLIST, JJTLIST_ITER, JJTLSHIFT_2OP, JJTMOD_2OP, JJTMUL_2OP, JJTNAME, JJTNEG_1OP, jjtNodeName, JJTNOT_1OP, JJTNOT_IN_CMP, JJTNOTEQUAL_CMP, JJTOR_2OP, JJTOR_BOOLEAN, JJTPASS_STMT, JJTPOS_1OP, JJTPOW_2OP, JJTPRINT_EXT, JJTPRINT_STMT, JJTQUESTIONM, JJTRAISE_STMT, JJTRCONTAINED, JJTRCONTAINS, JJTRETURN_STMT, JJTREXACT, JJTRIGHTDIREDGE, JJTROVERLAPS, JJTRSHIFT_2OP, JJTSINGLE_INPUT, JJTSLICE, JJTSTR_1OP, JJTSTRING, JJTSTRJOIN, JJTSUB_2OP, JJTSUITE, JJTTRY_STMT, JJTTUPLE, JJTVARARGSLIST, JJTVOID, JJTWHILE_STMT, JJTXOR_2OP
 
Constructor Summary
CodeCompiler(Module module, boolean print_results)
           
 
Method Summary
 Object add_2op(SimpleNode node)
           
 Object and_2op(SimpleNode node)
           
 Object and_boolean(SimpleNode node)
           
 Object assert_stmt(SimpleNode node)
           
 Object aug_and(SimpleNode node)
           
 Object aug_binaryop(SimpleNode node, String name)
           
 Object aug_divide(SimpleNode node)
           
 Object aug_lshift(SimpleNode node)
           
 Object aug_minus(SimpleNode node)
           
 Object aug_modulo(SimpleNode node)
           
 Object aug_multiply(SimpleNode node)
           
 Object aug_or(SimpleNode node)
           
 Object aug_plus(SimpleNode node)
           
 Object aug_power(SimpleNode node)
           
 Object aug_rshift(SimpleNode node)
           
 Object aug_xor(SimpleNode node)
           
 void beginLoop()
           
 Object bidiredge(SimpleNode node)
           
 Object binaryop(SimpleNode node, String name)
           
 Object break_stmt(SimpleNode node)
           
 Object Call_Op(SimpleNode node)
           
 Object classdef(SimpleNode node)
           
 Object comparision(SimpleNode node)
           
 Object Complex(SimpleNode node)
           
 Object continue_stmt(SimpleNode node)
           
 Object del_stmt(SimpleNode node)
           
 Object dictionary(SimpleNode node)
           
 Object div_2op(SimpleNode node)
           
 Object Dot_Op(SimpleNode node)
           
 Object doTest(org.python.compiler.Label end_of_if, SimpleNode node, int index)
           
 Object dotted_name(SimpleNode node)
           
 Object Ellipses(SimpleNode node)
           
 Object equal_cmp(SimpleNode node)
           
 void error(String msg, boolean err, SimpleNode node)
           
 Object eval_input(SimpleNode node)
           
 Object except_clause(SimpleNode node)
           
 void exceptionTest(int exc, org.python.compiler.Label end_of_exceptions, SimpleNode node, int index)
           
 Object exec_stmt(SimpleNode node)
           
 Object expr_stmt(SimpleNode node)
           
 Object file_input(SimpleNode suite)
           
 void finishLoop()
           
 Object Float(SimpleNode node)
           
 Object for_stmt(SimpleNode node)
           
 Object fplist(SimpleNode node)
           
 Object funcdef(SimpleNode node)
           
 void getDocString(SimpleNode suite)
           
 String getFilename()
           
 Future getFutures()
           
 void getNone()
           
 Object global_stmt(SimpleNode node)
           
 Object greater_cmp(SimpleNode node)
           
 Object greater_equal_cmp(SimpleNode node)
           
 Object if_stmt(SimpleNode node)
           
 Object Import(SimpleNode node)
           
 Object ImportFrom(SimpleNode node)
           
 Object in_cmp(SimpleNode node)
           
 Object Index_Op(SimpleNode node)
           
 Object Int(SimpleNode node)
           
 Object invert_1op(SimpleNode node)
           
 Object Invoke(SimpleNode inst, SimpleNode nname, SimpleNode[] values)
           
 Object is_cmp(SimpleNode node)
           
 Object is_not_cmp(SimpleNode node)
           
 Object lambdef(SimpleNode node)
           
 Object leftdiredge(SimpleNode node)
           
 Object less_cmp(SimpleNode node)
           
 Object less_equal_cmp(SimpleNode node)
           
 Object like(SimpleNode node)
           
 Object list_comprehension(SimpleNode node)
           
 Object list_iter(SimpleNode node)
           
 Object list(SimpleNode node)
           
 void loadFrame()
           
 Object lshift_2op(SimpleNode node)
           
 int make_binop(String name)
           
 void makeArray(SimpleNode[] nodes)
           
 boolean makeClosure(Vector freenames)
           
static void makeStrings(Code c, String[] names, int n)
           
 Object mod_2op(SimpleNode node)
           
 Object mul_2op(SimpleNode node)
           
 Object Name(SimpleNode node)
           
 Object neg_1op(SimpleNode node)
           
 Object not_1op(SimpleNode node)
           
 Object not_in_cmp(SimpleNode node)
           
 Object notequal_cmp(SimpleNode node)
           
 Object or_2op(SimpleNode node)
           
 Object or_boolean(SimpleNode node)
           
 void parse(SimpleNode node, Code code, boolean fast_locals, String className, boolean classBody, ScopeInfo scope, CompilerFlags cflags)
           
 Object pass_stmt(SimpleNode node)
           
 Object pos_1op(SimpleNode node)
           
 Object pow_2op(SimpleNode node)
           
 Object print_ext(SimpleNode node)
           
 Object print_stmt(SimpleNode node)
           
 Object questionm(SimpleNode node)
           
 Object raise_stmt(SimpleNode node)
           
 Object rcontained(SimpleNode node)
           
 Object rcontains(SimpleNode node)
           
 Object return_stmt(SimpleNode node)
           
 Object return_stmt(SimpleNode node, boolean inEval)
           
 Object rexact(SimpleNode node)
           
 Object rightdiredge(SimpleNode node)
           
 Object roverlaps(SimpleNode node)
           
 Object rshift_2op(SimpleNode node)
           
 Object seqDel(SimpleNode node)
           
 Object seqSet(SimpleNode node)
           
 void set(SimpleNode node)
           
 void set(SimpleNode node, int tmp)
           
 void setline(int line)
           
 void setline(SimpleNode node)
           
 Object single_input(SimpleNode node)
           
 Object Slice_Op(SimpleNode seq, SimpleNode node)
           
 Object Slice(SimpleNode node)
           
 int storeTop()
           
 Object str_1op(SimpleNode node)
           
 Object String(SimpleNode node)
           
 Object strjoin(SimpleNode node)
           
 Object sub_2op(SimpleNode node)
           
 Object suite(SimpleNode node)
           
 Object try_stmt(SimpleNode node)
           
 Object tryFinally(SimpleNode trySuite, SimpleNode finallySuite)
           
 Object tuple(SimpleNode node)
           
 Object unaryop(SimpleNode node, String name)
           
 Object while_stmt(SimpleNode node)
           
 Object xor_2op(SimpleNode node)
           
 
Methods inherited from class org.python.parser.Visitor
arglist, augassign, Colon,