org.problets.domain.model.expression.node.student
Class BailedOutStudentNodeView

java.lang.Object
  extended by org.problets.domain.model.expression.node.NodeView
      extended by org.problets.domain.model.expression.node.student.StudentNodeView
          extended by org.problets.domain.model.expression.node.student.MultiOperatorStudentNodeView
              extended by org.problets.domain.model.expression.node.student.BailedOutStudentNodeView
All Implemented Interfaces:
java.lang.Cloneable

public class BailedOutStudentNodeView
extends MultiOperatorStudentNodeView

To hold intermediate nodes in the student's evaluation tree when student can select multiple operators in one underbrace to signifiy evaluation in "bailed out" mode, e.g., when short circuiting &&/||. Important - this is used for &&/|| operator whether RHS is short-circuited/skipped or not.

Author:
Amruth Kumar

Field Summary
 
Fields inherited from class org.problets.domain.model.expression.node.student.StudentNodeView
DUMMY
 
Constructor Summary
BailedOutStudentNodeView(java.util.Vector inOperatorsCovered, java.util.Vector inOperandsCovered, int inLeftX, int inRightX, int inOrder)
           
 
Method Summary
 boolean isResultLocallyCorrect()
          BailedOutStudentNodeView is called only for && and ||.
static void main(java.lang.String[] args)
           
 
Methods inherited from class org.problets.domain.model.expression.node.student.MultiOperatorStudentNodeView
restoreAvailable, updateAvailable
 
Methods inherited from class org.problets.domain.model.expression.node.student.StudentNodeView
getExpression, getOriginalNodeView, getValue, isCovered, setNCheckSideEffects
 
Methods inherited from class org.problets.domain.model.expression.node.NodeView
classifyNodes, clone, explain, getBackupLeftX, getBackupRightX, getContent, getContentWidth, getCopyIfExists, getFontMetrics, getLeftChild, getLeftMax, getLeftMin, getLeftX, getNode, getNodeView, getRightChild, getRightMax, getRightMin, getRightX, getSideEffects, paintExpression, print, setLeftChild, setRightChild, toString, typeset
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BailedOutStudentNodeView

public BailedOutStudentNodeView(java.util.Vector inOperatorsCovered,
                                java.util.Vector inOperandsCovered,
                                int inLeftX,
                                int inRightX,
                                int inOrder)
Method Detail

isResultLocallyCorrect

public boolean isResultLocallyCorrect()
BailedOutStudentNodeView is called only for && and ||. So, we will check whether the student's answer is correct for only these two operators. This will affect student's grade when called for correct steps, and will affect ONLY error-flagging when called for incorrect steps.

Overrides:
isResultLocallyCorrect in class StudentNodeView

main

public static void main(java.lang.String[] args)