Package com.saxonica.ee.bytecode.util
This package contains utility classes supporting the generation of bytecode and the interface with the ASM library. Some of these classes and methods are called by generated bytecode, so the usage of these methods cannot be easily discerned by reading the source code.
-
Interface Summary Interface Description MessageBuilder Helper interface MeassageBuilder. -
Class Summary Class Description ByteCodeTrace Calls to this class are inserted into the bytecode for debugging purposesCallback A convenient place to put static methods that will be called from generated byte codeCompilerService Controlling/service class for compilation of expressions to Java bytecodeCompilerService.GeneratedClassInfo CompilerService.StaticSubClasses CompilerService.StaticVariableInfo ExpressionCompilerMap GeneratedClassLoader GeneratedClassLoader interface.GeneratedMethodInfo Information about the current method whose bytecode is being generatedGeneratedMethodInfo.LocalSlotInfo Generator This class is an extension of the ASM-supplied GeneratorAdapter library, containing additional utility and shortcut methods for bytecode generationLabelInfo An ASM label object with some control information to enable better diagnosticsMessageFromStack Helper class to generate a run-time exception using a message that is present at the top of the bytecode stackMessageTemplate Helper class to build messages in which the value of run-time bytecode variables can be inserted.NamedLabel Subclass of the ASM Label class that adds a diagnostic name to the label; this enables more intelligible bytecode to be output for diagnosticsOnEmpty The OnEmpty class represents an action to be taken by the bytecode generator when compiling an expression to return a "primitive" (unboxed) value such as a double float int long or String (treated as primitive for this purpose).OnEmpty.ReturnEmptyString The ReturnNull subclass indicates that when an expression evaluates to the empty sequence, the value should be returned as a zero-length string.OnEmpty.ReturnNull The ReturnNull subclass indicates that when an expression evaluates to the empty sequence, the value should be returned as a Java null.OnEmpty.UnwindAndJump The UnwindAndJump subclass causes the code generator, when an expression evaluates to the empty sequence, to generate a "goto" instruction to a defined label; but before executing the jump, the stack will be unwound to a known position. -
Exception Summary Exception Description CannotCompileException Exception indicating that constructs were encountered in the expression tree that cannot be compiled to bytecode