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

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.QuestionStartAfterOpenBrace
All Implemented Interfaces:
IndentRule

public class QuestionStartAfterOpenBrace
extends IndentRuleQuestion

Determines whether or not the closest non-whitespace character preceding the start of the current line (excluding any characters inside comments or strings) is on the same line as the enclosing CURLY brace (class is misnamed!).

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

Field Summary
 
Fields inherited from class edu.rice.cs.drjava.model.definitions.indent.IndentRuleWithTrace
NO, TERMINUS_RULE, YES
 
Constructor Summary
QuestionStartAfterOpenBrace(IndentRule yesRule, IndentRule noRule)
           
 
Method Summary
(package private)  boolean applyRule(AbstractDJDocument doc, Indenter.IndentReason reason)
          Assumes read lock is already held.
 
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
 

Constructor Detail

QuestionStartAfterOpenBrace

public QuestionStartAfterOpenBrace(IndentRule yesRule,
                                   IndentRule noRule)
Parameters:
yesRule - The decision subtree for the case that this rule applies in the current context.
noRule - The decision subtree for the case that this rule does not apply in the current context.
Method Detail

applyRule

boolean applyRule(AbstractDJDocument doc,
                  Indenter.IndentReason reason)
Assumes read lock is already held.

Specified by:
applyRule in class IndentRuleQuestion
Parameters:
doc - The AbstractDJDocument containing the current line.
reason - The reason that indentation was initiated, specified in Indenter
Returns:
True the closest non-whitespace character before the start of the current line (excluding any characters inside comments or strings) is an open brace.