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 Stringprivate static final Stringprivate static final Typeprotected static final Stringprotected static final StringFields 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 TypeMethodDescriptionInstructionHandleAdd exception handler code.Methods inherited from class org.jibx.binding.classes.MarshalUnmarshalBuilder
handleExceptionsMethods inherited from class org.jibx.binding.classes.ContextMethodBuilder
getFullName, isStaticMethod, loadContext, loadContext, loadObject, loadObject, setObjectSlot, storeObjectMethods inherited from class org.jibx.binding.classes.ExceptionMethodBuilder
defineSlot, freeSlot, getSlotMethods 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, targetNextMethods 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:
genExceptionHandlerin classMarshalUnmarshalBuilder- Returns:
- handle for first instruction in handler
-