org.dellroad.jc.cgen
Class CMethod

java.lang.Object
  extended byorg.dellroad.jc.cgen.CMethod

public class CMethod
extends Object

Implements JC's C code generation algorithm for implementing Java methods.


Constructor Summary
CMethod(CFile cfile, SootMethod m, MethodOptimizer optimizer, boolean includeLineNumbers, Set deps)
           
 
Method Summary
static CMethod current()
           
 void outputMethodFunction()
           
 void outputMethodInfo()
           
 void reset()
          Reset state.
static void wrapSynchronized(Body body)
          Make a synchronized method look as if it was contained inside a big synchronized block.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CMethod

public CMethod(CFile cfile,
               SootMethod m,
               MethodOptimizer optimizer,
               boolean includeLineNumbers,
               Set deps)
Method Detail

current

public static CMethod current()

wrapSynchronized

public static void wrapSynchronized(Body body)
Make a synchronized method look as if it was contained inside a big synchronized block. This relieves the VM itself from having to explicitly do the synchronization operations. Note that this is only done for non-native methods. The VM is still responsible for handling synchronization for native methods.


outputMethodInfo

public void outputMethodInfo()

outputMethodFunction

public void outputMethodFunction()

reset

public void reset()
Reset state. This frees a bunch of memory.