org.python.compiler
Class Module
- java.lang.Object
-
- org.python.compiler.Module
-
- All Implemented Interfaces:
- org.objectweb.asm.Opcodes, ClassConstants, CompilationContext
public class Module extends java.lang.Object implements org.objectweb.asm.Opcodes, ClassConstants, CompilationContext
-
-
Field Summary
-
Fields inherited from interface org.objectweb.asm.Opcodes
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_MANDATED, ACC_MODULE, ACC_NATIVE, ACC_OPEN, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_RECORD, ACC_STATIC, ACC_STATIC_PHASE, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_TRANSITIVE, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASM10_EXPERIMENTAL, ASM4, ASM5, ASM6, ASM7, ASM8, ASM9, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DOUBLE, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F_APPEND, F_CHOP, F_FULL, F_NEW, F_SAME, F_SAME1, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAT, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, H_GETFIELD, H_GETSTATIC, H_INVOKEINTERFACE, H_INVOKESPECIAL, H_INVOKESTATIC, H_INVOKEVIRTUAL, H_NEWINVOKESPECIAL, H_PUTFIELD, H_PUTSTATIC, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, IMUL, INEG, INSTANCEOF, INTEGER, INVOKEDYNAMIC, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISUB, IUSHR, IXOR, JSR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDIV, LLOAD, LMUL, LNEG, LONG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, NULL, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, SOURCE_DEPRECATED, SOURCE_MASK, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V_PREVIEW, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7, V1_8, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V9
-
Fields inherited from interface org.python.compiler.ClassConstants
$clss, $obj, $objArr, $pyCode, $pyComplex, $pyExc, $pyFloat, $pyFrame, $pyFuncTbl, $pyInteger, $pyLong, $pyObj, $pyObjArr, $pyProxy, $pyRunnable, $pyStr, $pyUnicode, $str, $strArr, $threadState, $throwable
-
-
Constructor Summary
Constructors Constructor and Description Module(java.lang.String name)Module(java.lang.String name, java.lang.String filename, boolean linenumbers)Module(java.lang.String name, java.lang.String filename, boolean linenumbers, long mtime)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidaddBootstrap()voidaddFunctions()voidaddInit()This block of code writes out the various standard methodsvoidaddMain()voidaddRunnable()static voidcompile(mod node, java.io.OutputStream ostream, java.lang.String name, java.lang.String filename, boolean linenumbers, boolean printResults, CompilerFlags cflags)static voidcompile(mod node, java.io.OutputStream ostream, java.lang.String name, java.lang.String filename, boolean linenumbers, boolean printResults, CompilerFlags cflags, long mtime)Create and write a Python module as a Java class file.voidemitNum(Num node, Code code)booleanemitPrimitiveArraySetters(java.util.List<? extends PythonTree> nodes, Code code)voidemitStr(Str node, Code code)voiderror(java.lang.String msg, boolean err, PythonTree node)java.lang.StringgetFilename()FuturegetFutures()ScopeInfogetScopeInfo(PythonTree node)voidwrite(java.io.OutputStream stream)
-
-
-
Constructor Detail
-
Module
public Module(java.lang.String name, java.lang.String filename, boolean linenumbers)
-
Module
public Module(java.lang.String name, java.lang.String filename, boolean linenumbers, long mtime)
-
Module
public Module(java.lang.String name)
-
-
Method Detail
-
addInit
public void addInit() throws java.io.IOExceptionThis block of code writes out the various standard methods- Throws:
java.io.IOException
-
addRunnable
public void addRunnable() throws java.io.IOException- Throws:
java.io.IOException
-
addMain
public void addMain() throws java.io.IOException- Throws:
java.io.IOException
-
addBootstrap
public void addBootstrap() throws java.io.IOException- Throws:
java.io.IOException
-
addFunctions
public void addFunctions() throws java.io.IOException- Throws:
java.io.IOException
-
write
public void write(java.io.OutputStream stream) throws java.io.IOException- Throws:
java.io.IOException
-
getFutures
public Future getFutures()
- Specified by:
getFuturesin interfaceCompilationContext
-
getFilename
public java.lang.String getFilename()
- Specified by:
getFilenamein interfaceCompilationContext
-
getScopeInfo
public ScopeInfo getScopeInfo(PythonTree node)
- Specified by:
getScopeInfoin interfaceCompilationContext
-
error
public void error(java.lang.String msg, boolean err, PythonTree node) throws java.lang.Exception- Specified by:
errorin interfaceCompilationContext- Throws:
java.lang.Exception
-
compile
public static void compile(mod node, java.io.OutputStream ostream, java.lang.String name, java.lang.String filename, boolean linenumbers, boolean printResults, CompilerFlags cflags) throws java.lang.Exception
- Throws:
java.lang.Exception
-
compile
public static void compile(mod node, java.io.OutputStream ostream, java.lang.String name, java.lang.String filename, boolean linenumbers, boolean printResults, CompilerFlags cflags, long mtime) throws java.lang.Exception
Create and write a Python module as a Java class file.- Parameters:
node- AST of the module to writeostream- stream onto which to write itname-filename-linenumbers-printResults-cflags-mtime-- Throws:
java.lang.Exception
-
emitNum
public void emitNum(Num node, Code code) throws java.lang.Exception
- Throws:
java.lang.Exception
-
emitStr
public void emitStr(Str node, Code code) throws java.lang.Exception
- Throws:
java.lang.Exception
-
emitPrimitiveArraySetters
public boolean emitPrimitiveArraySetters(java.util.List<? extends PythonTree> nodes, Code code) throws java.lang.Exception
- Throws:
java.lang.Exception
-
-
DMelt 3.0 © DataMelt by jWork.ORG