Class IRClassCompiler

java.lang.Object
gw.internal.gosu.ir.compiler.bytecode.AbstractBytecodeCompiler
gw.internal.gosu.ir.compiler.bytecode.IRClassCompiler

public class IRClassCompiler extends AbstractBytecodeCompiler
  • Field Details

    • COMPILE_WITH_DEBUG_INFO

      private static boolean COMPILE_WITH_DEBUG_INFO
    • JAVA_VER

      public static final int JAVA_VER
      See Also:
    • _cv

      private org.objectweb.asm.ClassVisitor _cv
    • _irClass

      private IRClass _irClass
    • _gosuVersion

      private static byte[] _gosuVersion
  • Constructor Details

    • IRClassCompiler

      public IRClassCompiler(IRClass irClass)
  • Method Details

    • compileClass

      public static byte[] compileClass(IRClass irClass, boolean debug)
    • compile

      private byte[] compile()
    • addGosuVersion

      private void addGosuVersion()
    • addAnnotations

      public void addAnnotations()
    • configClassVisitor

      private StringWriter configClassVisitor(org.objectweb.asm.ClassVisitor writer)
    • verify

      public static void verify(byte[] bytes)
    • isDebugFlagSet

      public static boolean isDebugFlagSet(DebugFlag flag)
    • compileClassHeader

      private void compileClassHeader()
    • getClassSignature

      private String getClassSignature()
      Deals with generics.
    • getInterfaceNames

      private String[] getInterfaceNames()
    • addSourceFileRef

      private void addSourceFileRef()
    • compileInnerClasses

      private void compileInnerClasses()
    • visitInnerClass

      private void visitInnerClass(IRClass.InnerClassInfo innerClass)
    • compileFields

      private void compileFields()
    • compileMethods

      private void compileMethods()
    • compileMethod

      private void compileMethod(IRMethodStatement method)
    • visitAnnotationDefaultValue

      private void visitAnnotationDefaultValue(Object value, IRType type, org.objectweb.asm.AnnotationVisitor annotationVisitor)
    • visitAnnotationDefaultValue

      private void visitAnnotationDefaultValue(Object value, IRType type, org.objectweb.asm.AnnotationVisitor annotationVisitor, String name)
    • terminateFunction

      private void terminateFunction(IRBytecodeContext context)
    • getMethodDescriptor

      public static String getMethodDescriptor(IRMethodStatement m)
    • toString

      public String toString()
      Overrides:
      toString in class Object