org.jibx.binding.classes
Class BranchWrapper

java.lang.Object
  extended by org.jibx.binding.classes.BranchWrapper

public class BranchWrapper
extends Object

Wrapper for branch handle. This preserves a snapshot of the stack state for the branch instruction, matching it against the stack state for the target instruction when set.

Version:
1.0
Author:
Dennis M. Sosnoski

Method Summary
static void setErrorOverride(boolean over)
          Set target setting error override state.
 void setTarget(BranchTarget target, MethodBuilder mb)
          Set target instruction for branch.
static void setTracking(boolean track)
          Set branch code generation tracking state.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

setTarget

public void setTarget(BranchTarget target,
                      MethodBuilder mb)
Set target instruction for branch. Validates the branch source stack state against the branch target stack state.

Parameters:
target - branch target wrapper
mb - method builder using this code

setTracking

public static void setTracking(boolean track)
Set branch code generation tracking state. When set, this saves a stack trace for each generated branch instruction, allowing the source of a branch to be traced when an error occurs in setting the branch target.

Parameters:
track - true to enable branch code generation tracking, false to disable it

setErrorOverride

public static void setErrorOverride(boolean over)
Set target setting error override state. When set, this blocks throwing an exception when an error occurs on setting the branch target, instead just printing the information to the console.

Parameters:
over - true to override exception on target error, false to allow it


Copyright © 2005-2011 jibx.org. All Rights Reserved.