moves
Class EndSolution

java.lang.Object
  |
  +--moves.EuMove
        |
        +--moves.bracketFamily
              |
              +--moves.EndSolution

public class EndSolution
extends moves.bracketFamily

Implements the LEA command EndSolution


Field Summary
 
Fields inherited from class moves.EuMove
allowedSegments, in, out
 
Constructor Summary
EndSolution(interagents.finalWrapper in, interagents.finalWrapper out, fundamentals.EuArguments args, int beacon)
          This constructor checks syntax and sets up the variables in, out, in.mode, out.mode
 
Method Summary
protected  void exMain(interagents.EuLab lab)
          Executes core commands of the move in joined main/macro mode, possibly affecting the passed @see EuLab.
protected  int postprocess(interagents.EuLab lab, librarian.ppProcessor ppp)
          Performs various postprocessing of the move, updating the ppProcessor and changing segment.
 
Methods inherited from class moves.EuMove
checkSegment, ex, executeMacro, executeMain, executeSegmentOnly, exMacro, getFirstOutIndex, initArguments, initBeacon, iobUsageChecks, issueBeacon, name, operationName, passExceptionDetails, passHintDetails, passSelection, postMacro, postMain, preMacro, preMain, preprocess, specialSegmentOK, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

EndSolution

public EndSolution(interagents.finalWrapper in,
                   interagents.finalWrapper out,
                   fundamentals.EuArguments args,
                   int beacon)
            throws DesignException
This constructor checks syntax and sets up the variables in, out, in.mode, out.mode

Parameters:
in - the input @see finalWrapper
out - the output @see finalWrapper
args - arguments
beacon - a beacon, or 0 if no such was requested
Method Detail

exMain

protected void exMain(interagents.EuLab lab)
               throws LeaException
Executes core commands of the move in joined main/macro mode, possibly affecting the passed @see EuLab. This instance checks that the exercise has really been solved. with full shadows as required by LEA

Overrides:
exMain in class EuMove
Parameters:
lab - the @see EuLab on which to work
LeaException

postprocess

protected int postprocess(interagents.EuLab lab,
                          librarian.ppProcessor ppp)
                   throws LeaException
Performs various postprocessing of the move, updating the ppProcessor and changing segment.

Overrides:
postprocess in class EuMove
Parameters:
ppp - the ppProcessor to be updated
Returns:
the new segment, BEFORE_TARGET
LeaException