Package org.intellij.grammar.analysis
Class BnfFirstNextAnalyzer
java.lang.Object
org.intellij.grammar.analysis.BnfFirstNextAnalyzer
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final BnfExpressionstatic final BnfExpressionstatic final BnfExpressionstatic final Stringstatic final Stringstatic final String -
Method Summary
Modifier and TypeMethodDescriptionstatic @NotNull StringasString(@NotNull BnfExpression expression) asStrings(Set<BnfExpression> expressions) calcFirst(@NotNull BnfExpression expression) calcFirstInner(BnfExpression expression, Set<BnfExpression> result, Set<BnfExpression> visited) calcFirstInner(BnfExpression expression, Set<BnfExpression> result, Set<BnfExpression> visited, @Nullable com.intellij.openapi.util.Pair<Boolean, List<BnfExpression>> forcedNext) calcNext(@NotNull BnfExpression targetExpression) static BnfFirstNextAnalyzercreateAnalyzer(boolean predicateLookAhead) static BnfFirstNextAnalyzercreateAnalyzer(boolean predicateLookAhead, boolean publicRuleOpaque, com.intellij.openapi.util.Condition<com.intellij.psi.PsiElement> parentFilter) static BnfFirstNextAnalyzercreateBackwardAnalyzer(boolean publicRuleOpaque)
-
Field Details
-
MATCHES_EOF
- See Also:
-
MATCHES_NOTHING
- See Also:
-
MATCHES_ANY
- See Also:
-
BNF_MATCHES_EOF
-
BNF_MATCHES_NOTHING
-
BNF_MATCHES_ANY
-
-
Method Details
-
createAnalyzer
-
createAnalyzer
public static BnfFirstNextAnalyzer createAnalyzer(boolean predicateLookAhead, boolean publicRuleOpaque, com.intellij.openapi.util.Condition<com.intellij.psi.PsiElement> parentFilter) -
createBackwardAnalyzer
-
calcFirst
-
calcFirst
-
calcNext
-
calcNext
-
calcFirstInner
public Set<BnfExpression> calcFirstInner(BnfExpression expression, Set<BnfExpression> result, Set<BnfExpression> visited) -
calcFirstInner
public Set<BnfExpression> calcFirstInner(BnfExpression expression, Set<BnfExpression> result, Set<BnfExpression> visited, @Nullable @Nullable com.intellij.openapi.util.Pair<Boolean, List<BnfExpression>> forcedNext) -
asStrings
-
asString
-