Package org.robovm.compiler.plugin.debug
Class DebugInformationPlugin
java.lang.Object
org.robovm.compiler.plugin.Plugin
org.robovm.compiler.plugin.CompilerPlugin
org.robovm.compiler.plugin.AbstractCompilerPlugin
org.robovm.compiler.plugin.debug.DebugInformationPlugin
public class DebugInformationPlugin extends AbstractCompilerPlugin
provides only line number debug information for now
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceDebugInformationPlugin.LineNumberMapperinterface declares line number mapping if it is required (e.g. -
Constructor Summary
Constructors Constructor Description DebugInformationPlugin() -
Method Summary
Modifier and Type Method Description voidafterMethod(Config config, Clazz clazz, soot.SootMethod method, ModuleBuilder mb, Function function)Called after a method has been compiled to LLVM bitcode but before it is converted into machine code.voidafterObjectFile(Config config, Clazz clazz, File objectFile, ObjectFile objectFileData)Called after the object file of a class has been compiled to an object file.voidbeforeClass(Config config, Clazz clazz, ModuleBuilder mb)Called just before a class is about to be compiled.voidbeforeConfig(Config.Builder builder, Config config)Called before theConfigfor a compilation is built.PluginArgumentsgetArguments()Returns the plugin's prefix arguments to be parsed from XML or the command linevoidhelloClass(Config config, Clazz clazz)Called just before a class is about to be compiled.Methods inherited from class org.robovm.compiler.plugin.AbstractCompilerPlugin
afterClass, afterClassDependenciesResolved, afterLinker, beforeLinker, beforeMethodMethods inherited from class org.robovm.compiler.plugin.Plugin
argumentValue, argumentValue, argumentValue, parseArguments
-
Constructor Details
-
DebugInformationPlugin
public DebugInformationPlugin()
-
-
Method Details
-
beforeConfig
Description copied from class:CompilerPluginCalled before theConfigfor a compilation is built. Allows the plugin to modify the compiler configuration. NOTE: Some properties of the passedConfigmay not have been set at the time of the call to this method.- Overrides:
beforeConfigin classAbstractCompilerPlugin- Parameters:
builder- theConfig.Builderconfig- the not yet builtConfig. Can be used to get configuration set on theConfig.Builderso far.
-
getArguments
Description copied from class:PluginReturns the plugin's prefix arguments to be parsed from XML or the command line- Overrides:
getArgumentsin classAbstractCompilerPlugin
-
helloClass
Description copied from class:CompilerPluginCalled just before a class is about to be compiled. Modifications to the underlyingSootClass(Clazz.getSootClass()) are not allowed this stage. Used to allow plugins to evaluate class before modification- Overrides:
helloClassin classAbstractCompilerPlugin- Parameters:
config- the currentConfig.clazz- theClazzbeing compiled.
-
beforeClass
Description copied from class:CompilerPluginCalled just before a class is about to be compiled. Modifications to the underlyingSootClass(Clazz.getSootClass()) should be done at this stage.- Overrides:
beforeClassin classAbstractCompilerPlugin- Parameters:
config- the currentConfig.clazz- theClazzbeing compiled.mb- theModuleBuilderholding the generated bitcode.- Throws:
IOException
-
afterMethod
public void afterMethod(Config config, Clazz clazz, soot.SootMethod method, ModuleBuilder mb, Function function) throws IOExceptionDescription copied from class:CompilerPluginCalled after a method has been compiled to LLVM bitcode but before it is converted into machine code.- Overrides:
afterMethodin classAbstractCompilerPlugin- Parameters:
config- the currentConfig.clazz- theClazzbeing compiled.method- the method being compiled.mb- theModuleBuilderholding the generated bitcode.function- the function corresponding to the method.- Throws:
IOException
-
afterObjectFile
public void afterObjectFile(Config config, Clazz clazz, File objectFile, ObjectFile objectFileData) throws IOExceptionDescription copied from class:CompilerPluginCalled after the object file of a class has been compiled to an object file.- Overrides:
afterObjectFilein classAbstractCompilerPlugin- Parameters:
config- the currentConfigclazz- theClazzbeing compiledobjectFile- the object fileobjectFileData- LLVM read object file data- Throws:
IOException
-