Package org.jibx.binding.classes
Class UnmarshalBuilder
Unmarshalling method builder. Tracks the creation of an unmarshalling method,
including special handling of exceptions that may be generated by object
accesses during the unmarshalling process.
- Author:
- Dennis M. Sosnoski
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final Type[]
protected static final String
private static final String
private static final Type
protected static final String
protected static final String
Fields inherited from class org.jibx.binding.classes.MethodBuilder
EXCEPTION_CONSTRUCTOR_SIGNATURE1, EXCEPTION_CONSTRUCTOR_SIGNATURE2, FRAMEWORK_EXCEPTION_CLASS, m_exceptions, m_generator, m_hashCode, m_instructionBuilder, m_item, m_method, m_targetBranches, m_valueMap, s_argNameLists, SYNTHETIC_ACCESS_FLAG
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionInstructionHandle
Add exception handler code.Methods inherited from class org.jibx.binding.classes.MarshalUnmarshalBuilder
handleExceptions
Methods inherited from class org.jibx.binding.classes.ContextMethodBuilder
getFullName, isStaticMethod, loadContext, loadContext, loadObject, loadObject, setObjectSlot, storeObject
Methods inherited from class org.jibx.binding.classes.ExceptionMethodBuilder
defineSlot, freeSlot, getSlot
Methods inherited from class org.jibx.binding.classes.MethodBuilder
addException, addLocal, addMethod, addMethodExceptions, appendAASTORE, appendACONST_NULL, appendALOAD, appendARRAYLENGTH, appendASTORE, appendCall, appendCallInit, appendCallInterface, appendCallStatic, appendCallVirtual, appendCreateArray, appendCreateCast, appendCreateCast, appendCreateNew, appendDCMPG, appendDUP, appendDUP_X1, appendDUP2, appendFCMPG, appendGet, appendGetField, appendGetStatic, appendIASTORE, appendICONST_0, appendICONST_1, appendIF_ICMPNE, appendIFEQ, appendIFGE, appendIFLT, appendIFNE, appendIFNONNULL, appendIFNULL, appendIncrementLocal, appendInstanceOf, appendISUB, appendIXOR, appendLCMP, appendLoadConstant, appendLoadConstant, appendLoadConstant, appendLoadLocal, appendPOP, appendPOP2, appendPut, appendPutField, appendPutStatic, appendReturn, appendReturn, appendStoreLocal, appendSWAP, appendSWAP1For2, appendTargetACONST_NULL, appendTargetCreateNew, appendTargetLoadConstant, appendTargetLoadConstant, appendTargetNOP, appendThrow, appendUnconditionalBranch, codeComplete, createLocal, getAccessFlags, getFirstInstruction, getItem, getKeyValue, getLastInstruction, getMethod, getName, getSignature, hashCode, initStackState, initStackState, initStackState, internalAppendCreateNew, isStackTopLong, setAccessFlags, setKeyValue, setTarget, targetNext, targetNext
Methods inherited from class org.jibx.binding.classes.BindingMethod
computeMethodHash, equals, getClassFile, makeAccessible
-
Field Details
-
UNMARSHALCONTEXT_CLASS
- See Also:
-
UNMARSHAL_EXCEPTION_TEXT
- See Also:
-
UNMARSHALLING_POSITION_METHOD
- See Also:
-
UNMARSHALLING_POSITION_SIGNATURE
- See Also:
-
UNMARSHALCONTEXT_TYPE
private static final Type UNMARSHALCONTEXT_TYPE -
SINGLE_STRING_ARGS
protected static final Type[] SINGLE_STRING_ARGS
-
-
Constructor Details
-
UnmarshalBuilder
Constructor. This sets up for constructing a static unmarshalling method with public access and wrapped exception handling.- Parameters:
name
- method name to be builtcf
- unmarshal class file informationmf
- method generation class file information
-
-
Method Details
-
genExceptionHandler
public InstructionHandle genExceptionHandler()Add exception handler code. The implementation of this abstract base class method provides handling specific to an unmarshalling method.- Specified by:
genExceptionHandler
in classMarshalUnmarshalBuilder
- Returns:
- handle for first instruction in handler
-