protected Value evalElseIf(INode node, ILexLocation location, PExp test,
			INode then, Context ctxt) throws AnalysisException
	{
		BreakpointManager.getBreakpoint(node).check(location, ctxt);

		try
		{
			return test.apply(VdmRuntime.getExpressionEvaluator(), ctxt).boolValue(ctxt) ? then.apply(THIS, ctxt)
					: null;
		} catch (ValueException e)
		{
			return VdmRuntimeError.abort(location, e);
		}
	}
protected Value evalElseIf ( INode node , ILexLocation location , PExp test , INode then , Context ctxt ) throws AnalysisException { BreakpointManager . getBreakpoint ( node ) . check ( location , ctxt ) ; try { return test . apply ( VdmRuntime . getExpressionEvaluator ( ) , ctxt ) . boolValue ( ctxt ) ? then . apply ( THIS , ctxt ) : null ; } catch ( ValueException e ) { return VdmRuntimeError . abort ( location , e ) ; } }
Utility method to evaluate elseif nodes

@param node
@param location
@param test
@param then
@param ctxt
@return
@throws AnalysisException