testData/generator/SelfBnf.PSI.expected.java (999 lines of code) (raw):
// ---- BnfTypes.java -----------------
// license.txt
package org.intellij.grammar.psi;
import com.intellij.psi.tree.IElementType;
import com.intellij.psi.PsiElement;
import com.intellij.lang.ASTNode;
import org.intellij.grammar.psi.impl.*;
import com.intellij.psi.impl.source.tree.CompositePsiElement;
public interface BnfTypes {
IElementType BNF_ATTR = new BnfCompositeElementType("BNF_ATTR");
IElementType BNF_ATTRS = new BnfCompositeElementType("BNF_ATTRS");
IElementType BNF_ATTR_PATTERN = new BnfCompositeElementType("BNF_ATTR_PATTERN");
IElementType BNF_CHOICE = new BnfCompositeElementType("BNF_CHOICE");
IElementType BNF_EXPRESSION = new BnfCompositeElementType("BNF_EXPRESSION");
IElementType BNF_EXTERNAL_EXPRESSION = new BnfCompositeElementType("BNF_EXTERNAL_EXPRESSION");
IElementType BNF_LIST_ENTRY = new BnfCompositeElementType("BNF_LIST_ENTRY");
IElementType BNF_LITERAL_EXPRESSION = new BnfCompositeElementType("BNF_LITERAL_EXPRESSION");
IElementType BNF_MODIFIER = new BnfCompositeElementType("BNF_MODIFIER");
IElementType BNF_PAREN_EXPRESSION = new BnfCompositeElementType("BNF_PAREN_EXPRESSION");
IElementType BNF_PAREN_OPT_EXPRESSION = new BnfCompositeElementType("BNF_PAREN_OPT_EXPRESSION");
IElementType BNF_PREDICATE = new BnfCompositeElementType("BNF_PREDICATE");
IElementType BNF_PREDICATE_SIGN = new BnfCompositeElementType("BNF_PREDICATE_SIGN");
IElementType BNF_QUANTIFIED = new BnfCompositeElementType("BNF_QUANTIFIED");
IElementType BNF_QUANTIFIER = new BnfCompositeElementType("BNF_QUANTIFIER");
IElementType BNF_REFERENCE_OR_TOKEN = new BnfCompositeElementType("BNF_REFERENCE_OR_TOKEN");
IElementType BNF_RULE = new BnfCompositeElementType("BNF_RULE");
IElementType BNF_SEQUENCE = new BnfCompositeElementType("BNF_SEQUENCE");
IElementType BNF_STRING_LITERAL_EXPRESSION = new BnfCompositeElementType("BNF_STRING_LITERAL_EXPRESSION");
IElementType BNF_VALUE_LIST = new BnfCompositeElementType("BNF_VALUE_LIST");
IElementType BNF_BLOCK_COMMENT = new BnfTokenType("block_comment");
IElementType BNF_EXTERNAL_END = new BnfTokenType(">>");
IElementType BNF_EXTERNAL_START = new BnfTokenType("<<");
IElementType BNF_ID = new BnfTokenType("id");
IElementType BNF_LEFT_BRACE = new BnfTokenType("{");
IElementType BNF_LEFT_BRACKET = new BnfTokenType("[");
IElementType BNF_LEFT_PAREN = new BnfTokenType("(");
IElementType BNF_LINE_COMMENT = new BnfTokenType("line_comment");
IElementType BNF_NUMBER = new BnfTokenType("number");
IElementType BNF_OP_AND = new BnfTokenType("&");
IElementType BNF_OP_EQ = new BnfTokenType("=");
IElementType BNF_OP_IS = new BnfTokenType("::=");
IElementType BNF_OP_NOT = new BnfTokenType("!");
IElementType BNF_OP_ONEMORE = new BnfTokenType("+");
IElementType BNF_OP_OPT = new BnfTokenType("?");
IElementType BNF_OP_OR = new BnfTokenType("|");
IElementType BNF_OP_ZEROMORE = new BnfTokenType("*");
IElementType BNF_RIGHT_BRACE = new BnfTokenType("}");
IElementType BNF_RIGHT_BRACKET = new BnfTokenType("]");
IElementType BNF_RIGHT_PAREN = new BnfTokenType(")");
IElementType BNF_SEMICOLON = new BnfTokenType(";");
IElementType BNF_STRING = new BnfTokenType("string");
class Factory {
public static CompositePsiElement createElement(IElementType type) {
if (type == BNF_ATTR) {
return new BnfAttrImpl(type);
}
else if (type == BNF_ATTRS) {
return new BnfAttrsImpl(type);
}
else if (type == BNF_ATTR_PATTERN) {
return new BnfAttrPatternImpl(type);
}
else if (type == BNF_CHOICE) {
return new BnfChoiceImpl(type);
}
else if (type == BNF_EXTERNAL_EXPRESSION) {
return new BnfExternalExpressionImpl(type);
}
else if (type == BNF_LIST_ENTRY) {
return new BnfListEntryImpl(type);
}
else if (type == BNF_LITERAL_EXPRESSION) {
return new BnfLiteralExpressionImpl(type);
}
else if (type == BNF_MODIFIER) {
return new BnfModifierImpl(type);
}
else if (type == BNF_PAREN_EXPRESSION) {
return new BnfParenExpressionImpl(type);
}
else if (type == BNF_PAREN_OPT_EXPRESSION) {
return new BnfParenOptExpressionImpl(type);
}
else if (type == BNF_PREDICATE) {
return new BnfPredicateImpl(type);
}
else if (type == BNF_PREDICATE_SIGN) {
return new BnfPredicateSignImpl(type);
}
else if (type == BNF_QUANTIFIED) {
return new BnfQuantifiedImpl(type);
}
else if (type == BNF_QUANTIFIER) {
return new BnfQuantifierImpl(type);
}
else if (type == BNF_REFERENCE_OR_TOKEN) {
return new BnfReferenceOrTokenImpl(type);
}
else if (type == BNF_RULE) {
return new BnfRuleImpl(type);
}
else if (type == BNF_SEQUENCE) {
return new BnfSequenceImpl(type);
}
else if (type == BNF_STRING_LITERAL_EXPRESSION) {
return new BnfStringLiteralExpressionImpl(type);
}
else if (type == BNF_VALUE_LIST) {
return new BnfValueListImpl(type);
}
throw new AssertionError("Unknown element type: " + type);
}
}
}
// ---- BnfAttr.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfAttr extends BnfNamedElement {
@Nullable
BnfAttrPattern getAttrPattern();
@Nullable
BnfExpression getExpression();
@NotNull
PsiElement getId();
}
// ---- BnfAttrPattern.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfAttrPattern extends BnfComposite {
@Nullable
BnfStringLiteralExpression getLiteralExpression();
}
// ---- BnfAttrs.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfAttrs extends BnfComposite {
@NotNull
List<BnfAttr> getAttrList();
}
// ---- BnfChoice.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfChoice extends BnfExpression {
@NotNull
List<BnfExpression> getExpressionList();
}
// ---- BnfExpression.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfExpression extends BnfComposite {
}
// ---- BnfExternalExpression.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfExternalExpression extends BnfExpression {
@NotNull
List<BnfExpression> getExpressionList();
@NotNull
BnfExpression getRefElement();
@NotNull List<BnfExpression> getArguments();
}
// ---- BnfListEntry.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiReference;
public interface BnfListEntry extends BnfComposite {
@Nullable
PsiElement getId();
PsiReference @NotNull [] getReferences();
@Nullable
BnfStringLiteralExpression getLiteralExpression();
}
// ---- BnfLiteralExpression.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfLiteralExpression extends BnfExpression {
@Nullable
PsiElement getNumber();
}
// ---- BnfModifier.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfModifier extends BnfComposite {
}
// ---- BnfParenExpression.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfParenExpression extends BnfParenthesized {
}
// ---- BnfParenOptExpression.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfParenOptExpression extends BnfParenthesized {
}
// ---- BnfParenthesized.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfParenthesized extends BnfExpression {
@NotNull
BnfExpression getExpression();
}
// ---- BnfPredicate.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfPredicate extends BnfExpression {
@NotNull
BnfExpression getExpression();
@NotNull
BnfPredicateSign getPredicateSign();
}
// ---- BnfPredicateSign.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfPredicateSign extends BnfComposite {
}
// ---- BnfQuantified.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfQuantified extends BnfExpression {
@NotNull
BnfExpression getExpression();
@NotNull
BnfQuantifier getQuantifier();
}
// ---- BnfQuantifier.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfQuantifier extends BnfComposite {
}
// ---- BnfReferenceOrToken.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfReferenceOrToken extends BnfExpression {
@NotNull
PsiElement getId();
@Nullable BnfRule resolveRule();
}
// ---- BnfRule.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfRule extends BnfNamedElement {
@Nullable
BnfAttrs getAttrs();
@NotNull
BnfExpression getExpression();
@NotNull
List<BnfModifier> getModifierList();
@NotNull
PsiElement getId();
}
// ---- BnfSequence.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfSequence extends BnfExpression {
@NotNull
List<BnfExpression> getExpressionList();
}
// ---- BnfStringLiteralExpression.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfStringLiteralExpression extends BnfLiteralExpression {
@NotNull
PsiElement getString();
}
// ---- BnfValueList.java -----------------
// license.txt
package org.intellij.grammar.psi;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElement;
public interface BnfValueList extends BnfExpression {
@NotNull
List<BnfListEntry> getListEntryList();
}
// ---- BnfAttrImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfAttrImpl extends BnfNamedImpl implements BnfAttr {
public BnfAttrImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitAttr(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@Nullable
public BnfAttrPattern getAttrPattern() {
return PsiTreeUtil.getChildOfType(this, BnfAttrPattern.class);
}
@Override
@Nullable
public BnfExpression getExpression() {
return PsiTreeUtil.getChildOfType(this, BnfExpression.class);
}
@Override
@NotNull
public PsiElement getId() {
return findPsiChildByType(BNF_ID);
}
}
// ---- BnfAttrPatternImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfAttrPatternImpl extends BnfCompositeImpl implements BnfAttrPattern {
public BnfAttrPatternImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitAttrPattern(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@Nullable
public BnfStringLiteralExpression getLiteralExpression() {
return PsiTreeUtil.getChildOfType(this, BnfStringLiteralExpression.class);
}
}
// ---- BnfAttrsImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfAttrsImpl extends BnfCompositeImpl implements BnfAttrs {
public BnfAttrsImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitAttrs(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@NotNull
public List<BnfAttr> getAttrList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, BnfAttr.class);
}
}
// ---- BnfChoiceImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfChoiceImpl extends BnfExpressionImpl implements BnfChoice {
public BnfChoiceImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitChoice(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@NotNull
public List<BnfExpression> getExpressionList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, BnfExpression.class);
}
}
// ---- BnfExpressionImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public abstract class BnfExpressionImpl extends BnfCompositeImpl implements BnfExpression {
public BnfExpressionImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitExpression(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
}
// ---- BnfExternalExpressionImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfExternalExpressionImpl extends BnfExpressionImpl implements BnfExternalExpression {
public BnfExternalExpressionImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitExternalExpression(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@NotNull
public List<BnfExpression> getExpressionList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, BnfExpression.class);
}
@Override
@NotNull
public BnfExpression getRefElement() {
List<BnfExpression> p1 = getExpressionList();
return p1.get(0);
}
@Override
public @NotNull List<BnfExpression> getArguments() {
return GrammarPsiImplUtil.getArguments(this);
}
}
// ---- BnfListEntryImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.PsiReference;
import com.intellij.psi.tree.IElementType;
public class BnfListEntryImpl extends BnfCompositeImpl implements BnfListEntry {
public BnfListEntryImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitListEntry(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@Nullable
public PsiElement getId() {
return findPsiChildByType(BNF_ID);
}
@Override
public PsiReference @NotNull [] getReferences() {
return GrammarPsiImplUtil.getReferences(this);
}
@Override
@Nullable
public BnfStringLiteralExpression getLiteralExpression() {
return PsiTreeUtil.getChildOfType(this, BnfStringLiteralExpression.class);
}
}
// ---- BnfLiteralExpressionImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfLiteralExpressionImpl extends BnfExpressionImpl implements BnfLiteralExpression {
public BnfLiteralExpressionImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitLiteralExpression(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@Nullable
public PsiElement getNumber() {
return findPsiChildByType(BNF_NUMBER);
}
}
// ---- BnfModifierImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfModifierImpl extends BnfCompositeImpl implements BnfModifier {
public BnfModifierImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitModifier(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
}
// ---- BnfParenExpressionImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfParenExpressionImpl extends BnfParenthesizedImpl implements BnfParenExpression {
public BnfParenExpressionImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitParenExpression(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
}
// ---- BnfParenOptExpressionImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfParenOptExpressionImpl extends BnfParenthesizedImpl implements BnfParenOptExpression {
public BnfParenOptExpressionImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitParenOptExpression(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
}
// ---- BnfParenthesizedImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfParenthesizedImpl extends BnfExpressionImpl implements BnfParenthesized {
public BnfParenthesizedImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitParenthesized(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@NotNull
public BnfExpression getExpression() {
return PsiTreeUtil.getChildOfType(this, BnfExpression.class);
}
}
// ---- BnfPredicateImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfPredicateImpl extends BnfExpressionImpl implements BnfPredicate {
public BnfPredicateImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitPredicate(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@NotNull
public BnfExpression getExpression() {
return PsiTreeUtil.getChildOfType(this, BnfExpression.class);
}
@Override
@NotNull
public BnfPredicateSign getPredicateSign() {
return PsiTreeUtil.getChildOfType(this, BnfPredicateSign.class);
}
}
// ---- BnfPredicateSignImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfPredicateSignImpl extends BnfCompositeImpl implements BnfPredicateSign {
public BnfPredicateSignImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitPredicateSign(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
}
// ---- BnfQuantifiedImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfQuantifiedImpl extends BnfExpressionImpl implements BnfQuantified {
public BnfQuantifiedImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitQuantified(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@NotNull
public BnfExpression getExpression() {
return PsiTreeUtil.getChildOfType(this, BnfExpression.class);
}
@Override
@NotNull
public BnfQuantifier getQuantifier() {
return PsiTreeUtil.getChildOfType(this, BnfQuantifier.class);
}
}
// ---- BnfQuantifierImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfQuantifierImpl extends BnfCompositeImpl implements BnfQuantifier {
public BnfQuantifierImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitQuantifier(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
}
// ---- BnfReferenceOrTokenImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfReferenceOrTokenImpl extends BnfRefOrTokenImpl implements BnfReferenceOrToken {
public BnfReferenceOrTokenImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitReferenceOrToken(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@NotNull
public PsiElement getId() {
return findPsiChildByType(BNF_ID);
}
}
// ---- BnfRuleImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfRuleImpl extends BnfNamedImpl implements BnfRule {
public BnfRuleImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitRule(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@Nullable
public BnfAttrs getAttrs() {
return PsiTreeUtil.getChildOfType(this, BnfAttrs.class);
}
@Override
@NotNull
public BnfExpression getExpression() {
return PsiTreeUtil.getChildOfType(this, BnfExpression.class);
}
@Override
@NotNull
public List<BnfModifier> getModifierList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, BnfModifier.class);
}
@Override
@NotNull
public PsiElement getId() {
return findPsiChildByType(BNF_ID);
}
}
// ---- BnfSequenceImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfSequenceImpl extends BnfExpressionImpl implements BnfSequence {
public BnfSequenceImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitSequence(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@NotNull
public List<BnfExpression> getExpressionList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, BnfExpression.class);
}
}
// ---- BnfStringLiteralExpressionImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfStringLiteralExpressionImpl extends BnfStringImpl implements BnfStringLiteralExpression {
public BnfStringLiteralExpressionImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitStringLiteralExpression(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@NotNull
public PsiElement getString() {
return findPsiChildByType(BNF_STRING);
}
}
// ---- BnfValueListImpl.java -----------------
// license.txt
package org.intellij.grammar.psi.impl;
import java.util.List;
import org.jetbrains.annotations.*;
import com.intellij.lang.ASTNode;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.util.PsiTreeUtil;
import static org.intellij.grammar.psi.BnfTypes.*;
import org.intellij.grammar.psi.*;
import com.intellij.psi.tree.IElementType;
public class BnfValueListImpl extends BnfExpressionImpl implements BnfValueList {
public BnfValueListImpl(IElementType type) {
super(type);
}
@Override
public <R> R accept(@NotNull BnfVisitor<R> visitor) {
return visitor.visitValueList(this);
}
@Override
public void accept(@NotNull PsiElementVisitor visitor) {
if (visitor instanceof BnfVisitor) accept((BnfVisitor)visitor);
else super.accept(visitor);
}
@Override
@NotNull
public List<BnfListEntry> getListEntryList() {
return PsiTreeUtil.getChildrenOfTypeAsList(this, BnfListEntry.class);
}
}
// ---- BnfVisitor.java -----------------
// license.txt
package org.intellij.grammar.psi;
import org.jetbrains.annotations.*;
import com.intellij.psi.PsiElementVisitor;
public class BnfVisitor<R> extends PsiElementVisitor {
public R visitAttr(@NotNull BnfAttr o) {
return visitNamedElement(o);
}
public R visitAttrPattern(@NotNull BnfAttrPattern o) {
return visitComposite(o);
}
public R visitAttrs(@NotNull BnfAttrs o) {
return visitComposite(o);
}
public R visitChoice(@NotNull BnfChoice o) {
return visitExpression(o);
}
public R visitExpression(@NotNull BnfExpression o) {
return visitComposite(o);
}
public R visitExternalExpression(@NotNull BnfExternalExpression o) {
return visitExpression(o);
}
public R visitListEntry(@NotNull BnfListEntry o) {
return visitComposite(o);
}
public R visitLiteralExpression(@NotNull BnfLiteralExpression o) {
return visitExpression(o);
}
public R visitModifier(@NotNull BnfModifier o) {
return visitComposite(o);
}
public R visitParenExpression(@NotNull BnfParenExpression o) {
return visitParenthesized(o);
}
public R visitParenOptExpression(@NotNull BnfParenOptExpression o) {
return visitParenthesized(o);
}
public R visitParenthesized(@NotNull BnfParenthesized o) {
return visitExpression(o);
}
public R visitPredicate(@NotNull BnfPredicate o) {
return visitExpression(o);
}
public R visitPredicateSign(@NotNull BnfPredicateSign o) {
return visitComposite(o);
}
public R visitQuantified(@NotNull BnfQuantified o) {
return visitExpression(o);
}
public R visitQuantifier(@NotNull BnfQuantifier o) {
return visitComposite(o);
}
public R visitReferenceOrToken(@NotNull BnfReferenceOrToken o) {
return visitExpression(o);
}
public R visitRule(@NotNull BnfRule o) {
return visitNamedElement(o);
}
public R visitSequence(@NotNull BnfSequence o) {
return visitExpression(o);
}
public R visitStringLiteralExpression(@NotNull BnfStringLiteralExpression o) {
return visitLiteralExpression(o);
}
public R visitValueList(@NotNull BnfValueList o) {
return visitExpression(o);
}
public R visitNamedElement(@NotNull BnfNamedElement o) {
return visitComposite(o);
}
public R visitComposite(@NotNull BnfComposite o) {
visitElement(o);
return null;
}
}