diff options
Diffstat (limited to 'plugins/org.eclipse.dltk.sh.ui/src/org/eclipse/dltk/sh/ui/text/DollarBraceCountingRule.java')
-rw-r--r-- | plugins/org.eclipse.dltk.sh.ui/src/org/eclipse/dltk/sh/ui/text/DollarBraceCountingRule.java | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/plugins/org.eclipse.dltk.sh.ui/src/org/eclipse/dltk/sh/ui/text/DollarBraceCountingRule.java b/plugins/org.eclipse.dltk.sh.ui/src/org/eclipse/dltk/sh/ui/text/DollarBraceCountingRule.java index a23af99..b7bf20c 100644 --- a/plugins/org.eclipse.dltk.sh.ui/src/org/eclipse/dltk/sh/ui/text/DollarBraceCountingRule.java +++ b/plugins/org.eclipse.dltk.sh.ui/src/org/eclipse/dltk/sh/ui/text/DollarBraceCountingRule.java @@ -25,7 +25,6 @@ public class DollarBraceCountingRule extends PatternRule { private final char fOpening; private final char fClosing; - private int fBraceCount; /** * Creates a rule for the given opening and closing braces. When these @@ -65,8 +64,9 @@ public class DollarBraceCountingRule extends PatternRule { if ((fLineDelimiters == null) || (originalDelimiters.length != count)) { fSortedLineDelimiters = new char[count][]; } else { - while ((count > 0) && (fLineDelimiters[count - 1] == originalDelimiters[count - 1])) + while ((count > 0) && (fLineDelimiters[count - 1] == originalDelimiters[count - 1])) { count--; + } } if (count != 0) { fLineDelimiters = originalDelimiters; @@ -75,15 +75,16 @@ public class DollarBraceCountingRule extends PatternRule { int readCount = 1; int c; - fBraceCount = 1; + int fBraceCount = 1; while ((c = scanner.read()) != ICharacterScanner.EOF) { if (c == fEscapeCharacter) { // Skip escaped character(s) if (fEscapeContinuesLine) { c = scanner.read(); for (char[] fSortedLineDelimiter : fSortedLineDelimiters) { - if ((c == fSortedLineDelimiter[0]) && sequenceDetected(scanner, fSortedLineDelimiter, true)) + if ((c == fSortedLineDelimiter[0]) && sequenceDetected(scanner, fSortedLineDelimiter, true)) { break; + } } } else scanner.read(); @@ -95,24 +96,28 @@ public class DollarBraceCountingRule extends PatternRule { // Count closing braces fBraceCount--; // End successfully when the open brace count returns to zero - if (fBraceCount == 0) + if (fBraceCount == 0) { return true; + } } else if (fBreaksOnEOL) { // Check for end of line since it can be used to terminate the // pattern. for (char[] fSortedLineDelimiter : fSortedLineDelimiters) { - if ((c == fSortedLineDelimiter[0]) && sequenceDetected(scanner, fSortedLineDelimiter, true)) + if ((c == fSortedLineDelimiter[0]) && sequenceDetected(scanner, fSortedLineDelimiter, true)) { return true; + } } } readCount++; } - if (fBreaksOnEOF) + if (fBreaksOnEOF) { return true; + } - for (; readCount > 0; readCount--) + for (; readCount > 0; readCount--) { scanner.unread(); + } return false; } |