edu.rice.cs.drjava.model.definitions.indent
Class QuestionPrevLineStartsWith

java.lang.Object
  extended by edu.rice.cs.drjava.model.definitions.indent.IndentRuleWithTrace
      extended by edu.rice.cs.drjava.model.definitions.indent.IndentRuleQuestion
          extended by edu.rice.cs.drjava.model.definitions.indent.QuestionPrevLineStartsWith
All Implemented Interfaces:
IndentRule

public class QuestionPrevLineStartsWith
extends IndentRuleQuestion

Question rule in indentation decision tree. Determines if the preceding line starts with the specified character.

Version:
$Id: QuestionPrevLineStartsWith.java 5175 2010-01-20 08:46:32Z mgricken $

Field Summary
private  java.lang.String _prefix
           
 
Fields inherited from class edu.rice.cs.drjava.model.definitions.indent.IndentRuleWithTrace
NO, TERMINUS_RULE, YES
 
Constructor Summary
QuestionPrevLineStartsWith(java.lang.String prefix, IndentRule yesRule, IndentRule noRule)
          Constructs a new rule for the given prefix string.
 
Method Summary
(package private)  boolean applyRule(AbstractDJDocument doc, Indenter.IndentReason reason)
          Determines if the previous line in the document starts with the specified characters, ignoring whitespace.
 
Methods inherited from class edu.rice.cs.drjava.model.definitions.indent.IndentRuleQuestion
applyRule, indentLine, testApplyRule, testApplyRule, testIndentLine
 
Methods inherited from class edu.rice.cs.drjava.model.definitions.indent.IndentRuleWithTrace
_addToIndentTrace, getRuleName, getTrace, indentLine, printLastIndentTrace, setRuleTraceEnabled, testIndentLine
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_prefix

private java.lang.String _prefix
Constructor Detail

QuestionPrevLineStartsWith

public QuestionPrevLineStartsWith(java.lang.String prefix,
                                  IndentRule yesRule,
                                  IndentRule noRule)
Constructs a new rule for the given prefix string. ALWAYS looks inside comments. Only runs in the event thread.

Parameters:
prefix - String to search for
yesRule - Rule to use if this rule holds
noRule - Rule to use if this rule does not hold
Method Detail

applyRule

boolean applyRule(AbstractDJDocument doc,
                  Indenter.IndentReason reason)
Determines if the previous line in the document starts with the specified characters, ignoring whitespace.

Specified by:
applyRule in class IndentRuleQuestion
Parameters:
doc - AbstractDJDocument containing the line to be indented.
reason - The reason that indentation was initiated, specified in Indenter
Returns:
true if this node's rule holds.