mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
begin..end brace matcher
This commit is contained in:
+10
-10
@@ -30,7 +30,7 @@ import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
class PairedBraceMatcherAdapter implements NontrivialBraceMatcher {
|
||||
public class PairedBraceMatcherAdapter implements NontrivialBraceMatcher {
|
||||
private final PairedBraceMatcher myMatcher;
|
||||
private final Language myLanguage;
|
||||
|
||||
@@ -47,22 +47,22 @@ class PairedBraceMatcherAdapter implements NontrivialBraceMatcher {
|
||||
return -1;
|
||||
}
|
||||
|
||||
public boolean isLBraceToken(HighlighterIterator iterator, CharSequence fileText, FileType fileType) {
|
||||
@Nullable
|
||||
public BracePair findPair(boolean left, HighlighterIterator iterator, CharSequence fileText, FileType fileType) {
|
||||
final IElementType tokenType = iterator.getTokenType();
|
||||
final BracePair[] pairs = myMatcher.getPairs();
|
||||
for (BracePair pair : pairs) {
|
||||
if (tokenType == pair.getLeftBraceType()) return true;
|
||||
if (tokenType == (left? pair.getLeftBraceType() : pair.getRightBraceType())) return pair;
|
||||
}
|
||||
return false;
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean isLBraceToken(HighlighterIterator iterator, CharSequence fileText, FileType fileType) {
|
||||
return findPair(true, iterator, fileText, fileType) != null;
|
||||
}
|
||||
|
||||
public boolean isRBraceToken(HighlighterIterator iterator, CharSequence fileText, FileType fileType) {
|
||||
final IElementType tokenType = iterator.getTokenType();
|
||||
final BracePair[] pairs = myMatcher.getPairs();
|
||||
for (BracePair pair : pairs) {
|
||||
if (tokenType == pair.getRightBraceType()) return true;
|
||||
}
|
||||
return false;
|
||||
return findPair(false, iterator, fileText, fileType) != null;
|
||||
}
|
||||
|
||||
public IElementType getOppositeBraceTokenType(@NotNull final IElementType type) {
|
||||
|
||||
Reference in New Issue
Block a user