From e94102a586665bd87456852cb51035ba581fd166 Mon Sep 17 00:00:00 2001 From: Andrey Breslav Date: Fri, 14 Jan 2011 20:16:20 +0300 Subject: [PATCH] Match replaced with when --- examples/src/BinaryTree.jetl | 42 +- grammar/src/expressions.grm | 29 +- grammar/src/lexical.grm | 3 +- grammar/src/match.grm | 28 - grammar/src/when.grm | 65 + idea/src/org/jetbrains/jet/JetNodeTypes.java | 12 +- .../jet/lang/parsing/AbstractJetParsing.java | 4 +- .../lang/parsing/JetExpressionParsing.java | 350 +++-- .../jet/lang/parsing/JetParsing.java | 16 +- .../jetbrains/jet/lang/psi/JetAttribute.java | 4 +- idea/src/org/jetbrains/jet/lexer/Jet.flex | 3 +- .../org/jetbrains/jet/lexer/JetTokens.java | 7 +- .../org/jetbrains/jet/lexer/_JetLexer.java | 683 +++++----- idea/testData/psi/AnnotatedExpressions.txt | 10 +- idea/testData/psi/Attributes.txt | 147 ++- idea/testData/psi/Attributes_ERR.txt | 132 +- idea/testData/psi/BabySteps.txt | 8 +- idea/testData/psi/BabySteps_ERR.txt | 8 +- idea/testData/psi/ByCaluses.txt | 14 +- idea/testData/psi/Constructors.txt | 10 +- idea/testData/psi/ControlStructures.txt | 34 +- idea/testData/psi/EOLsOnRollback.txt | 14 +- idea/testData/psi/Enums.txt | 26 +- idea/testData/psi/Extensions.txt | 24 +- idea/testData/psi/Extensions_ERR.txt | 4 +- idea/testData/psi/FunctionCalls.txt | 16 +- idea/testData/psi/FunctionLiterals.txt | 40 +- idea/testData/psi/FunctionLiterals_ERR.txt | 20 +- idea/testData/psi/FunctionTypes.txt | 211 +-- idea/testData/psi/FunctionTypes_ERR.txt | 13 +- idea/testData/psi/Functions.txt | 191 +-- idea/testData/psi/Functions_ERR.txt | 88 +- idea/testData/psi/LocalDeclarations.txt | 19 +- idea/testData/psi/Match.jet | 41 - idea/testData/psi/Match.txt | 396 ------ idea/testData/psi/Match_ERR.jet | 24 - idea/testData/psi/Match_ERR.txt | 177 --- idea/testData/psi/NamespaceModifiers.txt | 10 +- idea/testData/psi/Precedence.txt | 93 +- idea/testData/psi/Properties.txt | 78 +- idea/testData/psi/Properties_ERR.txt | 24 +- idea/testData/psi/QuotedIdentifiers.txt | 5 +- idea/testData/psi/RootNamespace.jet | 4 +- idea/testData/psi/RootNamespace.txt | 61 +- idea/testData/psi/SimpleClassMembers.txt | 52 +- idea/testData/psi/SimpleClassMembers_ERR.txt | 10 +- idea/testData/psi/SimpleExpressions.txt | 86 +- idea/testData/psi/SoftKeywords.txt | 152 +-- idea/testData/psi/ThisType.txt | 10 +- idea/testData/psi/TupleTypes.txt | 65 +- idea/testData/psi/TupleTypes_ERR.txt | 61 +- idea/testData/psi/TypeAnnotations.txt | 33 +- idea/testData/psi/TypeConstraints.txt | 8 +- idea/testData/psi/TypeDef.txt | 28 +- idea/testData/psi/TypeDef_ERR.txt | 12 +- .../psi/TypeExpressionAmbiguities_ERR.txt | 24 +- idea/testData/psi/When.jet | 76 ++ idea/testData/psi/When.txt | 1111 ++++++++++++++++ idea/testData/psi/When_ERR.jet | 26 + idea/testData/psi/When_ERR.txt | 235 ++++ .../psi/examples/AnonymousObjects.txt | 8 +- idea/testData/psi/examples/BinaryTree.jet | 42 +- idea/testData/psi/examples/BinaryTree.txt | 1171 ++++++++--------- idea/testData/psi/examples/BitArith.txt | 46 +- idea/testData/psi/examples/Builder.txt | 22 +- idea/testData/psi/examples/Color.txt | 12 +- .../psi/examples/FunctionsAndTypes.txt | 66 +- idea/testData/psi/examples/Graph.txt | 94 +- idea/testData/psi/examples/IPushPop.txt | 6 +- .../psi/examples/PolymorphicClassObjects.txt | 47 +- idea/testData/psi/examples/Queue.txt | 24 +- idea/testData/psi/examples/Stack.txt | 10 +- idea/testData/psi/examples/UnionFind.txt | 16 +- .../testData/psi/examples/UpdateOperation.txt | 14 +- idea/testData/psi/examples/With.txt | 11 +- .../psi/examples/array/MutableArray.txt | 30 +- .../psi/examples/collections/ArrayList.txt | 34 +- .../psi/examples/collections/HashMap.txt | 135 +- .../psi/examples/collections/IIterable.txt | 4 +- .../psi/examples/collections/IIterator.txt | 20 +- .../psi/examples/collections/IList.txt | 17 +- .../examples/collections/IMutableIterable.txt | 8 +- .../examples/collections/IMutableIterator.txt | 6 +- .../psi/examples/collections/IMutableList.txt | 26 +- .../psi/examples/collections/IMutableSet.txt | 16 +- .../psi/examples/collections/ISet.txt | 10 +- .../psi/examples/collections/ISized.txt | 2 +- .../psi/examples/collections/LinkedList.txt | 36 +- .../psi/examples/collections/List.txt | 26 +- idea/testData/psi/examples/io/IOSamples.txt | 54 +- .../examples/priorityqueues/BinaryHeap.txt | 81 +- .../priorityqueues/IPriorityQueue.txt | 6 +- .../priorityqueues/PriorityQueueAsPushPop.txt | 10 +- .../testData/psi/examples/util/Comparison.txt | 44 +- .../psi/examples/util/IComparable.txt | 4 +- 95 files changed, 4199 insertions(+), 3136 deletions(-) delete mode 100644 grammar/src/match.grm create mode 100644 grammar/src/when.grm delete mode 100644 idea/testData/psi/Match.jet delete mode 100644 idea/testData/psi/Match.txt delete mode 100644 idea/testData/psi/Match_ERR.jet delete mode 100644 idea/testData/psi/Match_ERR.txt create mode 100644 idea/testData/psi/When.jet create mode 100644 idea/testData/psi/When.txt create mode 100644 idea/testData/psi/When_ERR.jet create mode 100644 idea/testData/psi/When_ERR.txt diff --git a/examples/src/BinaryTree.jetl b/examples/src/BinaryTree.jetl index 03a4f0a399f..6fc21937a98 100644 --- a/examples/src/BinaryTree.jetl +++ b/examples/src/BinaryTree.jetl @@ -27,10 +27,10 @@ class BinaryTree : IMutableSet { fun contains(node : TreeNode, item : T) : Boolean { if (node == null) return false - compare(item, node.value) match { - case EQ => true - case LS => contains(node.left, item) - case GT => contains(node.right, item) + when (compare(item, node.value)) { + EQ => true + LS => contains(node.left, item) + GT => contains(node.right, item) } } } @@ -50,10 +50,10 @@ class BinaryTree : IMutableSet { node = TreeNode(item, parent) return true } - compare(item, node.value) match { - case EQ => false - case LS => add(ref node.left, node) - case GT => add(ref node.right, node) + when (compare(item, node.value)) { + EQ => false + LS => add(ref node.left, node) + GT => add(ref node.right, node) } } @@ -63,14 +63,14 @@ class BinaryTree : IMutableSet { root = TreeNode(item, null) return true } - compare(item, node.value) match { - case EQ => return false - case LS => + when (compare(item, node.value)) { + EQ => return false + LS => if (node.left == null) { node.left = TreeNode(item, node) return true } else return add(node.left) - case GT => + GT => if (node.right == null) { node.right = TreeNode(item, node) return true @@ -89,20 +89,20 @@ class BinaryTree : IMutableSet { fun find(node : TreeNode) : TreeNode { if (node == null) return null - compare(item, node.value) match { - case EQ => node - case LS => find(node.left) - case GT => find(node.right) + when (compare(item, node.value)) { + EQ => node + LS => find(node.left) + GT => find(node.right) } } } private fun remove(node : TreeNode) { - node match { - case TreeNode(null, null) => replace(node, null) - case TreeNode(null, right) => replace(node, right) - case TreeNode(left, null) => replace(node, left) - case TreeNode(left, right) => { + when (node) { + is TreeNode(null, null) => replace(node, null) + is TreeNode(null, ?right) => replace(node, right) + is TreeNode(?left, null) => replace(node, left) + is TreeNode(?left, ?right) => { val min = min(node.right) node.value = min.value remove(min) diff --git a/grammar/src/expressions.grm b/grammar/src/expressions.grm index 6a71411e007..19911e594b3 100644 --- a/grammar/src/expressions.grm +++ b/grammar/src/expressions.grm @@ -13,7 +13,6 @@ Decreasing precedence: equalityOperation "&&" "||" - "match" "->" assignmentOperator */ @@ -24,12 +23,7 @@ expression ; arrowTupleExpression - : match ("->" match)* - ; - -// ATTENTION -match - : conjunction ("match" "{" matchEntry+ "}")* + : assignmentOperator ("->" assignmentOperator)* ; disjunction @@ -49,7 +43,9 @@ comparison ; namedInfixOrTypeExpression - : elvisOperation (namedInfixOrTypeOperation elvisOperation)* + : elvisOperation (inOperation elvisOperation)* + : elvisOperation (isOperation isRHS)? + : elvisOperation (typeOperation type)? ; elvisOperation @@ -87,6 +83,7 @@ atomicExpression : tupleLiteral : "this" ("<" type ">")? : if + : when : try : "typeof" "(" expression ")" : "new" constructorInvocation // TODO: Do we need "new"?, see factory methods @@ -109,6 +106,10 @@ literalConstant : "null" ; +isRHS + : pattern + ; + declaration : function : property @@ -125,8 +126,16 @@ additiveOperation : "+" : "-" ; -namedInfixOrTypeOperation - : "in" : "is" : "!in" : "!is" : "as" : ":" +inOperation + : "in" : "!in" + ; + +typeOperation + : "as" : ":" + ; + +isOPeration + : "is" : "!is" ; comparisonOperation diff --git a/grammar/src/lexical.grm b/grammar/src/lexical.grm index d2b8f52add6..494b58f2564 100644 --- a/grammar/src/lexical.grm +++ b/grammar/src/lexical.grm @@ -57,11 +57,10 @@ if else while do -match +when out ref try -case Soft: wraps -- in a class header diff --git a/grammar/src/match.grm b/grammar/src/match.grm deleted file mode 100644 index eac906a3ed3..00000000000 --- a/grammar/src/match.grm +++ /dev/null @@ -1,28 +0,0 @@ -matchEntry - : attributes "case" pattern ("if" "(" expression ")")? "=>" expression SEMI? - ; - -pattern - : constantPattern // literal - : SimpleName // variable from the context - : tuplePattern - : bindingPattern // we allow non-linear patterns - : decomposerPattern // TODO: labeled components are allowed? - ; - -constantPattern - : literalConstant - ; - - -tuplePattern - : "(" ((SimpleName "=")? pattern{","})? ")" - ; - -bindingPattern - : "?" SimpleName? (":" pattern)? - ; - -decomposerPattern - : userType tuplePattern? - ; diff --git a/grammar/src/when.grm b/grammar/src/when.grm new file mode 100644 index 00000000000..4bb312b8288 --- /dev/null +++ b/grammar/src/when.grm @@ -0,0 +1,65 @@ +when + : "when" "(" (modifiers "val" SimpleName "=")? expression ")" "{" + whenEntry* + "}" + ; + +// TODO: attributes for when entries? +whenEntry + : whenConditionIf{","} (when | "=>" expression SEMI) + : "else" ("continue" | "=>" expression SEMI) + ; + +whenConditionIf + : whenCondition ("if" "(" expression ")")? + ; + +whenCondition + : expression + : ("in" | "!in") expression + : ("is" | "!is") isRHS + ; + +pattern + : attributes pattern + : type // '[a] T' is a type-pattern 'T' with an attribute '[a]', not a type-pattern '[a] T' + // this makes sense because is-chack may be different for a type with attributes + : tuplePattern + : decomposerPattern + : constantPattern + : bindingPattern + : expressionPattern + ; + +decomposerPattern + : type + : qualifiedName typeParameters? (tuplePattern)? + ; + +constantPattern + : literalConstant + ; + +tuplePattern + : "(" ((SimpleName "=")? pattern{","})? ")" + ; + +bindingPattern + : "?" SimpleName? binding? + ; + +binding + : "is" pattern + : "!is" pattern + : "in" expression + : "!in" expression + : "=" expression + ; + +qualifiedName + : ("namespace" ".")? SimpleName{","} + ; + +expressionPattern + : "=" expression + ; \ No newline at end of file diff --git a/idea/src/org/jetbrains/jet/JetNodeTypes.java b/idea/src/org/jetbrains/jet/JetNodeTypes.java index 3c7ca197ac7..72960eeca32 100644 --- a/idea/src/org/jetbrains/jet/JetNodeTypes.java +++ b/idea/src/org/jetbrains/jet/JetNodeTypes.java @@ -97,6 +97,7 @@ public interface JetNodeTypes { JetNodeType THIS_EXPRESSION = new JetNodeType("THIS_EXPRESSION", JetThisExpression.class); JetNodeType BINARY_EXPRESSION = new JetNodeType("BINARY_EXPRESSION", JetBinaryExpression.class); JetNodeType BINARY_WITH_TYPE = new JetNodeType("BINARY_WITH_TYPE", JetBinaryExpressionWithTypeRHS.class); + JetNodeType BINARY_WITH_PATTERN = new JetNodeType("BINARY_WITH_PATTERN", JetExpression.class); // TODO: JetNodeType MATCH_EXPRESSION = new JetNodeType("MATCH_EXPRESSION", JetMatchExpression.class); JetNodeType PREFIX_EXPRESSION = new JetNodeType("PREFIX_EXPRESSION", JetPrefixExpression.class); JetNodeType POSTFIX_EXPRESSION = new JetNodeType("POSTFIX_EXPRESSION", JetPostfixExpression.class); @@ -108,10 +109,19 @@ public interface JetNodeTypes { JetNodeType SAFE_ACCESS_EXPRESSION = new JetNodeType("SAFE_ACCESS_EXPRESSION", JetSafeQualifiedExpression.class); JetNodeType MATCH_BLOCK = new JetNodeType("MATCH_BLOCK", JetMatchBlock.class); JetNodeType MATCH_ENTRY = new JetNodeType("MATCH_ENTRY"); - JetNodeType PATTERN = new JetNodeType("PATTERN"); + JetNodeType DECOMPOSER_PATTERN = new JetNodeType("DECOMPOSER_PATTERN"); JetNodeType TUPLE_PATTERN = new JetNodeType("TUPLE_PATTERN"); JetNodeType OBJECT_LITERAL = new JetNodeType("OBJECT_LITERAL", JetObjectLiteralExpression.class); JetNodeType ROOT_NAMESPACE = new JetNodeType("ROOT_NAMESPACE", JetRootNamespaceExpression.class); + JetNodeType DECOMPOSER_ARGUMENT_LIST = new JetNodeType("DECOMPOSER_ARGUMENT_LIST"); + JetNodeType DECOMPOSER_ARGUMENT = new JetNodeType("DECOMPOSER_ARGUMENT"); + JetNodeType TYPE_PATTERN = new JetNodeType("TYPE_PATTERN"); + JetNodeType EXPRESSION_PATTERN = new JetNodeType("EXPRESSION_PATTERN"); + JetNodeType BINDING_PATTERN = new JetNodeType("BINDING_PATTERN"); + JetNodeType WHEN = new JetNodeType("WHEN"); + JetNodeType WHEN_ENTRY = new JetNodeType("WHEN_ENTRY"); + JetNodeType WHEN_CONDITION = new JetNodeType("WHEN_CONDITION"); + JetNodeType TUPLE_PATTERN_ENTRY = new JetNodeType("TUPLE_PATTERN_ENTRY"); JetNodeType NAMESPACE_NAME = new JetNodeType("NAMESPACE_NAME", JetContainerNode.class); } diff --git a/idea/src/org/jetbrains/jet/lang/parsing/AbstractJetParsing.java b/idea/src/org/jetbrains/jet/lang/parsing/AbstractJetParsing.java index 6b7029b506b..3a0b600f394 100644 --- a/idea/src/org/jetbrains/jet/lang/parsing/AbstractJetParsing.java +++ b/idea/src/org/jetbrains/jet/lang/parsing/AbstractJetParsing.java @@ -199,10 +199,10 @@ import static org.jetbrains.jet.lexer.JetTokens.*; } } - protected void errorUntil(String mesage, TokenSet tokenSet) { + protected void errorUntil(String message, TokenSet tokenSet) { PsiBuilder.Marker error = mark(); skipUntil(tokenSet); - error.error(mesage); + error.error(message); } protected void errorUntilOffset(String mesage, int offset) { diff --git a/idea/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java b/idea/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java index 4d36677f901..d9517a8c31d 100644 --- a/idea/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java +++ b/idea/src/org/jetbrains/jet/lang/parsing/JetExpressionParsing.java @@ -13,20 +13,24 @@ import static org.jetbrains.jet.lexer.JetTokens.*; * @author abreslav */ public class JetExpressionParsing extends AbstractJetParsing { - private final JetParsing myJetParsing; + private static final TokenSet WHEN_CONDITION_RECOVERY_SET = TokenSet.create(RBRACE, IN_KEYWORD, NOT_IN, IS_KEYWORD, NOT_IS, ELSE_KEYWORD); + private static final TokenSet WHEN_CONDITION_RECOVERY_SET_WITH_DOUBLE_ARROW = TokenSet.create(RBRACE, IN_KEYWORD, NOT_IN, IS_KEYWORD, NOT_IS, ELSE_KEYWORD, DOUBLE_ARROW); + private static final TokenSet TYPE_ARGUMENT_LIST_STOPPERS = TokenSet.create( INTEGER_LITERAL, LONG_LITERAL, FLOAT_LITERAL, CHARACTER_LITERAL, STRING_LITERAL, RAW_STRING_LITERAL, NAMESPACE_KEYWORD, AS_KEYWORD, TYPE_KEYWORD, CLASS_KEYWORD, THIS_KEYWORD, VAL_KEYWORD, VAR_KEYWORD, FUN_KEYWORD, EXTENSION_KEYWORD, FOR_KEYWORD, NULL_KEYWORD, TYPEOF_KEYWORD, NEW_KEYWORD, TRUE_KEYWORD, FALSE_KEYWORD, IS_KEYWORD, THROW_KEYWORD, RETURN_KEYWORD, BREAK_KEYWORD, CONTINUE_KEYWORD, OBJECT_KEYWORD, IF_KEYWORD, TRY_KEYWORD, ELSE_KEYWORD, WHILE_KEYWORD, DO_KEYWORD, - MATCH_KEYWORD, RBRACKET, RBRACE, RPAR, PLUSPLUS, MINUSMINUS, MUL, PLUS, MINUS, EXCL, DIV, PERC, LTEQ, + WHEN_KEYWORD, RBRACKET, RBRACE, RPAR, PLUSPLUS, MINUSMINUS, MUL, PLUS, MINUS, EXCL, DIV, PERC, LTEQ, // TODO GTEQ, foo=x EQEQEQ, ARROW, DOUBLE_ARROW, EXCLEQEQEQ, EQEQ, EXCLEQ, ANDAND, OROR, SAFE_ACCESS, ELVIS, QUEST, SEMICOLON, RANGE, EQ, MULTEQ, DIVEQ, PERCEQ, PLUSEQ, MINUSEQ, NOT_IN, NOT_IS, HASH, COLON ); + private final JetParsing myJetParsing; + public JetExpressionParsing(SemanticWhitespaceAwarePsiBuilder builder, JetParsing jetParsing) { super(builder); myJetParsing = jetParsing; @@ -34,13 +38,6 @@ public class JetExpressionParsing extends AbstractJetParsing { @SuppressWarnings({"UnusedDeclaration"}) private enum Precedence { -// MEMBER_ACCESS(DOT, HASH, SAFE_ACCESS) { -// @Override -// public void parseHigherPrecedence(JetExpressionParsing parsing) { -// parsing.parseAtomicExpression(); -// } -// }, -// POSTFIX(PLUSPLUS, MINUSMINUS), // typeArguments? valueArguments : typeArguments : arrayAccess PREFIX(MINUS, PLUS, MINUSMINUS, PLUSPLUS, EXCL) { // attributes @@ -63,7 +60,7 @@ public class JetExpressionParsing extends AbstractJetParsing { SIMPLE_NAME(IDENTIFIER), ELVIS(JetTokens.ELVIS), // TODO : make same priority - WITH_TYPE_RHS(IS_KEYWORD, NOT_IS, AS_KEYWORD, COLON) { + WITH_TYPE_RHS(AS_KEYWORD, COLON) { @Override public void parseRightHandSide(JetExpressionParsing parsing) { parsing.myJetParsing.parseTypeRef(); @@ -74,23 +71,22 @@ public class JetExpressionParsing extends AbstractJetParsing { return BINARY_WITH_TYPE; } }, + IS(IS_KEYWORD, NOT_IS) { + @Override + public void parseRightHandSide(JetExpressionParsing parsing) { + parsing.parsePattern(); + } + + @Override + public JetNodeType getProductType() { + return BINARY_WITH_PATTERN; + } + }, NAMED_INFIX(IN_KEYWORD, NOT_IN), COMPARISON(LT, GT, LTEQ, GTEQ), EQUALITY(EQEQ, EXCLEQ, EQEQEQ, EXCLEQEQEQ), CONJUNCTION(ANDAND), DISJUNCTION(OROR), - MATCH(MATCH_KEYWORD) { - @Override - public void parseRightHandSide(JetExpressionParsing parsing) { - parsing.parseMatchBlock(); - } - - @Override - public JetNodeType getProductType() { - return MATCH_EXPRESSION; - } - }, - // TODO: don't build a binary tree, build a tuple ARROW(JetTokens.ARROW), ASSIGNMENT(EQ, PLUSEQ, MINUSEQ, MULTEQ, DIVEQ, PERCEQ), ; @@ -285,6 +281,7 @@ public class JetExpressionParsing extends AbstractJetParsing { * : objectLiteral * : jump * : if + * : when * : try * : loop * : literalConstant @@ -330,6 +327,9 @@ public class JetExpressionParsing extends AbstractJetParsing { else if (at(IF_KEYWORD)) { parseIf(); } + else if (at(WHEN_KEYWORD)) { + parseWhen(); + } else if (at(TRY_KEYWORD)) { parseTry(); } @@ -407,86 +407,259 @@ public class JetExpressionParsing extends AbstractJetParsing { } /* - * "{" matchEntry+ "}" + * when + * : "when" "(" (modifiers "val" SimpleName "=")? expression ")" "{" + * whenEntry* + * "}" + * ; */ - private void parseMatchBlock() { - PsiBuilder.Marker mark = mark(); - expect(LBRACE, "Expecting '{' to open a match block"); - while (!eof() && !at(RBRACE)) { - if (at(CASE_KEYWORD) || at(LBRACKET)) { - parseMatchEntry(); - } else { - errorUntil("Expecting 'case' to start pattern matching", TokenSet.create(RBRACE, LBRACKET, CASE_KEYWORD)); - } + private void parseWhen() { + assert _at(WHEN_KEYWORD); + + PsiBuilder.Marker when = mark(); + + advance(); // WHEN_KEYWORD + + myBuilder.disableNewlines(); + expect(LPAR, "Expecting '('"); + + int valPos = matchTokenStreamPredicate(new FirstBefore(new At(VAL_KEYWORD), new AtSet(RPAR, LBRACE, RBRACE, SEMICOLON, EQ))); + if (valPos >= 0) { + myJetParsing.parseProperty(true); + } else { + parseExpression(); } + + expect(RPAR, "Expecting ')'"); + myBuilder.restoreNewlinesState(); + + myBuilder.enableNewlines(); + expect(LBRACE, "Expecting '{'"); + + while (!eof() && !at(RBRACE)) { + parseWhenEntry(); + } + expect(RBRACE, "Expecting '}'"); - mark.done(MATCH_BLOCK); + myBuilder.restoreNewlinesState(); + + when.done(WHEN); } /* - * matchEntry - * : attributes "case" pattern ("if" "(" expression ")")? "=>" expression SEMI? + * TODO: attributes for when entries? + * whenEntry + * : whenConditionIf{","} (when | "=>" expression SEMI) + * : "else" ("continue" | "=>" expression SEMI) * ; */ - private void parseMatchEntry() { + private void parseWhenEntry() { PsiBuilder.Marker entry = mark(); - myJetParsing.parseAttributeList(); + if (at(ELSE_KEYWORD)) { + advance(); // ELSE_KEYWORD - myBuilder.disableNewlines(); - expect(CASE_KEYWORD, "Expecting 'case' to start pattern matching", TokenSet.create(RBRACE, IF_KEYWORD, DOUBLE_ARROW)); + if (!at(CONTINUE_KEYWORD) && !at(DOUBLE_ARROW)) { + errorUntil("Expecting 'continue' or '=> expression'", TokenSet.create(CONTINUE_KEYWORD, DOUBLE_ARROW, + RBRACE, EOL_OR_SEMICOLON)); + } - parsePattern(); + if (at(DOUBLE_ARROW)) { + advance(); // DOUBLE_ARROW + + if (atSet(WHEN_CONDITION_RECOVERY_SET)) { + error("Expecting an expression"); + } else { + parseExpression(); + } + } else if (at(CONTINUE_KEYWORD)) { + advance(); // CONTINUE_KEYWORD + } else if (!atSet(WHEN_CONDITION_RECOVERY_SET)) { + errorAndAdvance("Expecting 'continue' or '=> expression'"); + } + } else { + parseWhenEntryNotElse(); + } + + entry.done(WHEN_ENTRY); + consumeIf(SEMICOLON); + } + + /* + * : whenConditionIf{","} (when | "=>" expression SEMI) + */ + private void parseWhenEntryNotElse() { + while (true) { + while (at(COMMA)) errorAndAdvance("Expecting a when-condition"); + parseWhenConditionIf(); + if (!at(COMMA)) break; + advance(); // COMMA + } + if (at(WHEN_KEYWORD)) { + parseWhen(); + } else { + expect(DOUBLE_ARROW, "Expecting '=>' or 'when'", WHEN_CONDITION_RECOVERY_SET); + if (atSet(WHEN_CONDITION_RECOVERY_SET)) { + error("Expecting an expression"); + } else { + parseExpression(); + } + // SEMI is consumed in parseWhenEntry + } + } + + /* + * whenConditionIf + * : pattern ("if" "(" expression ")")? + * ; + */ + private void parseWhenConditionIf() { + parseWhenCondition(); if (at(IF_KEYWORD)) { advance(); // IF_KEYWORD - parseCondition(); + // TODO : allow omitting these parentheses + myBuilder.disableNewlines(); + expect(LPAR, "Expecting '('"); + + parseExpression(); + + expect(RPAR, "Expecting ')'"); + myBuilder.restoreNewlinesState(); } + } - expect(DOUBLE_ARROW, "Expecting '=>'", TokenSet.create(RBRACE)); - myBuilder.restoreNewlinesState(); + /* + * whenCondition + * : expression + * : ("in" | "!in") expression + * : ("is" | "!is") isRHS + * ; + */ + private void parseWhenCondition() { + PsiBuilder.Marker condition = mark(); + if (at(IN_KEYWORD) || at(NOT_IN)) { + advance(); // IN_KEYWORD or NOT_IN - parseExpression(); + if (atSet(WHEN_CONDITION_RECOVERY_SET_WITH_DOUBLE_ARROW)) { + error("Expecting an expression"); + } else { + parseExpression(); + } + } else if (at(IS_KEYWORD) || at(NOT_IS)) { + advance(); // IS_KEYWORD or NOT_IS - consumeIf(SEMICOLON); - - entry.done(MATCH_ENTRY); + if (atSet(WHEN_CONDITION_RECOVERY_SET_WITH_DOUBLE_ARROW)) { + error("Expecting a type or a decomposer pattern"); + } else { + parsePattern(); + } + } else { + if (atSet(WHEN_CONDITION_RECOVERY_SET_WITH_DOUBLE_ARROW)) { + error("Expecting an expression, is-condition or in-condition"); + } else { + parseExpression(); + } + } + condition.done(WHEN_CONDITION); } /* * pattern - * : constantPattern // literal - * : variablePattern // variable from the context - * : tuplePattern - * : bindingPattern // we allow non-linear patterns - * : decomposerPattern // TODO: labeled components are allowed? + * : attributes pattern + * : type // '[a] T' is a type-pattern 'T' with an attribute '[a]', not a type-pattern '[a] T' + * // this makes sense because is-chack may be different for a type with attributes + * : tuplePattern + * : decomposerPattern + * : constantPattern + * : bindingPattern + * : expressionPattern * ; */ private void parsePattern() { PsiBuilder.Marker pattern = mark(); - if (at(IDENTIFIER) || at(NAMESPACE_KEYWORD)) { + myJetParsing.parseAttributeList(); + + if (at(NAMESPACE_KEYWORD) || at(IDENTIFIER)) { myJetParsing.parseUserType(); if (at(LPAR)) { - parseTuplePattern(); + PsiBuilder.Marker list = mark(); + parseTuplePattern(DECOMPOSER_ARGUMENT); + list.done(DECOMPOSER_ARGUMENT_LIST); + pattern.done(DECOMPOSER_PATTERN); + } else { + pattern.done(TYPE_PATTERN); } - } - else if (at(LPAR)) { - parseTuplePattern(); + } else if (at(LPAR)) { + parseTuplePattern(TUPLE_PATTERN_ENTRY); + pattern.done(TUPLE_PATTERN); + } else if (at(LBRACE) || at(CAPITALIZED_THIS_KEYWORD)) { + myJetParsing.parseTypeRef(); + pattern.done(TYPE_PATTERN); } else if (at(QUEST)) { parseBindingPattern(); - } else if (!parseLiteralConstant()) { + pattern.done(BINDING_PATTERN); + } else if (at(EQ)) { + advance(); // EQ + parseExpression(); + pattern.done(EXPRESSION_PATTERN); + } else if (parseLiteralConstant()) { + pattern.done(EXPRESSION_PATTERN); + } else { errorUntil("Pattern expected", TokenSet.create(RBRACE, DOUBLE_ARROW)); + pattern.drop(); + } + } + + /* + * tuplePattern + * : "(" ((SimpleName "=")? pattern){","}? ")" + * ; + */ + private void parseTuplePattern(JetNodeType entryType) { + assert _at(LPAR); + + myBuilder.disableNewlines(); + advance(); // LPAR + + if (!at(RPAR)) { + while (true) { + while (at(COMMA)) errorAndAdvance("Expecting a pattern"); + if (at(RPAR)) { + error("Expecting a pattern"); + break; + } + PsiBuilder.Marker entry = mark(); + if (at(IDENTIFIER) && lookahead(1) == EQ) { + advance(); // IDENTIFIER + advance(); // EQ + } + parsePattern(); + entry.done(entryType); + if (!at(COMMA)) break; + + advance(); // COMMA + } } - pattern.done(PATTERN); + expect(RPAR, "Expecting ')'"); + myBuilder.restoreNewlinesState(); } /* * bindingPattern - * : "?" SimpleName? (":" pattern)? + * : "?" SimpleName? binding? + * ; + * + * binding + * : "is" pattern + * : "!is" pattern + * : "in" expression + * : "!in" expression + * : "=" expression * ; */ private void parseBindingPattern() { @@ -496,43 +669,44 @@ public class JetExpressionParsing extends AbstractJetParsing { consumeIf(IDENTIFIER); - if (at(COLON)) { - advance(); // COLON + if (at(IS_KEYWORD) || at(NOT_IS)) { + advance(); // IS_KEYWORD or NOT_IS parsePattern(); + } else if (at(IN_KEYWORD) || at(NOT_IN)) { + advance(); // IN_KEYWORD ot NOT_IN + + parseExpression(); + } else if (at(EQ)) { + advance(); // EQ + + parseExpression(); } } /* - * tuplePattern - * : "(" ((SimpleName "=")? pattern{","})? ")" + * qualifiedName + * : ("namespace" ".")? SimpleName{","} * ; */ - private void parseTuplePattern() { - assert _at(LPAR); + private void parseQualifiedName() { + PsiBuilder.Marker mark = mark(); - PsiBuilder.Marker pattern = mark(); - advance(); // LPAR + if (at(NAMESPACE_KEYWORD)) { + advance(); // NAMESPACE_KEYWORD + mark.done(REFERENCE_EXPRESSION); + mark = mark.precede(); - if (!at(RPAR)) { - while (true) { - while (at(COMMA)) errorAndAdvance("Expecting a pattern"); - if (at(IDENTIFIER) && lookahead(1) == EQ) { - advance(); // IDENTIFIER - advance(); // EQ - } - parsePattern(); - if (!at(COMMA)) break; - advance(); // COMMA - if (at(RPAR)) { - error("Expecting a pattern"); - break; - } - } + expect(DOT, "Expecting '.'"); } - - expect(RPAR, "Expecting ')'"); - pattern.done(TUPLE_PATTERN); + while (true) { + expect(IDENTIFIER, "Expecting an indetifier", TokenSet.create(DOT)); + mark.done(REFERENCE_EXPRESSION); + mark = mark.precede(); + if (!at(DOT)) break; + advance(); // DOT + } + mark.drop(); } /* @@ -621,8 +795,8 @@ public class JetExpressionParsing extends AbstractJetParsing { int lastDot = matchTokenStreamPredicate(new LastBefore(new At(DOT), new AtOffset(doubleArrowPos))); if (lastDot >= 0) { // There is a receiver type createTruncatedBuilder(lastDot).parseTypeRef(); - assert _at(DOT); - advance(); // DOT; + + expect(DOT, "Expecting '.'"); if (!at(LPAR)) { int firstLParPos = matchTokenStreamPredicate(new FirstBefore(new At(LPAR), new AtOffset(doubleArrowPos))); diff --git a/idea/src/org/jetbrains/jet/lang/parsing/JetParsing.java b/idea/src/org/jetbrains/jet/lang/parsing/JetParsing.java index 14daf154fba..8cc26a42356 100644 --- a/idea/src/org/jetbrains/jet/lang/parsing/JetParsing.java +++ b/idea/src/org/jetbrains/jet/lang/parsing/JetParsing.java @@ -40,6 +40,7 @@ public class JetParsing extends AbstractJetParsing { /*package*/ static final TokenSet TYPE_REF_FIRST = TokenSet.create(LBRACKET, IDENTIFIER, LBRACE, LPAR); public static JetParsing createForTopLevel(SemanticWhitespaceAwarePsiBuilder builder) { + builder.setDebugMode(true); JetParsing jetParsing = new JetParsing(builder); jetParsing.myExpressionParsing = new JetExpressionParsing(builder, jetParsing); return jetParsing; @@ -307,7 +308,10 @@ public class JetParsing extends AbstractJetParsing { */ private void parseAttribute() { PsiBuilder.Marker attribute = mark(); + + PsiBuilder.Marker typeReference = mark(); parseUserType(); + typeReference.done(TYPE_REFERENCE); if (at(LPAR)) { myExpressionParsing.parseValueArgumentList(); } else if (at(EQ)) { @@ -679,9 +683,11 @@ public class JetParsing extends AbstractJetParsing { public JetNodeType parseProperty(boolean local) { // TODO: how to write an extension ptoperty for a generic type? (val List.i -- what is T?!) - assert _at(VAL_KEYWORD) || _at(VAR_KEYWORD); - - advance(); // VAL_KEYWORD or VAR_KEYWORD + if (at(VAL_KEYWORD) || at(VAR_KEYWORD)) { + advance(); // VAL_KEYWORD or VAR_KEYWORD + } else { + errorAndAdvance("Expecting 'val' or 'var'"); + } TokenSet propertyNameFollow = TokenSet.create(COLON, EQ, LBRACE, SEMICOLON); @@ -1201,12 +1207,12 @@ public class JetParsing extends AbstractJetParsing { parseTypeArgumentList(); if (!at(DOT)) break; - type.done(USER_TYPE); + type.done(REFERENCE_EXPRESSION); type = type.precede(); advance(); // DOT } - type.done(USER_TYPE); + type.done(REFERENCE_EXPRESSION); } /* diff --git a/idea/src/org/jetbrains/jet/lang/psi/JetAttribute.java b/idea/src/org/jetbrains/jet/lang/psi/JetAttribute.java index 2e756105762..45bd5501dd6 100644 --- a/idea/src/org/jetbrains/jet/lang/psi/JetAttribute.java +++ b/idea/src/org/jetbrains/jet/lang/psi/JetAttribute.java @@ -22,8 +22,8 @@ public class JetAttribute extends JetElement { } @Nullable @IfNotParsed - public JetUserType getTypeReference() { - return (JetUserType) findChildByType(JetNodeTypes.USER_TYPE); + public JetTypeReference getTypeReference() { + return (JetTypeReference) findChildByType(JetNodeTypes.TYPE_REFERENCE); } @Nullable diff --git a/idea/src/org/jetbrains/jet/lexer/Jet.flex b/idea/src/org/jetbrains/jet/lexer/Jet.flex index 60ca96c4b32..bf5222ea3e9 100644 --- a/idea/src/org/jetbrains/jet/lexer/Jet.flex +++ b/idea/src/org/jetbrains/jet/lexer/Jet.flex @@ -96,12 +96,11 @@ RAW_STRING_LITERAL = {THREE_QUO} {QUO_STRING_CHAR}* {THREE_QUO}? "while" { return JetTokens.WHILE_KEYWORD ;} "break" { return JetTokens.BREAK_KEYWORD ;} "class" { return JetTokens.CLASS_KEYWORD ;} - "match" { return JetTokens.MATCH_KEYWORD ;} "throw" { return JetTokens.THROW_KEYWORD ;} "false" { return JetTokens.FALSE_KEYWORD ;} + "when" { return JetTokens.WHEN_KEYWORD ;} "true" { return JetTokens.TRUE_KEYWORD ;} "type" { return JetTokens.TYPE_KEYWORD ;} - "case" { return JetTokens.CASE_KEYWORD ;} "this" { return JetTokens.THIS_KEYWORD ;} "null" { return JetTokens.NULL_KEYWORD ;} "else" { return JetTokens.ELSE_KEYWORD ;} diff --git a/idea/src/org/jetbrains/jet/lexer/JetTokens.java b/idea/src/org/jetbrains/jet/lexer/JetTokens.java index 7b52ff17da4..dd10b34ca67 100644 --- a/idea/src/org/jetbrains/jet/lexer/JetTokens.java +++ b/idea/src/org/jetbrains/jet/lexer/JetTokens.java @@ -50,8 +50,7 @@ public interface JetTokens { JetKeywordToken ELSE_KEYWORD = JetKeywordToken.keyword("else"); JetKeywordToken WHILE_KEYWORD = JetKeywordToken.keyword("while"); JetKeywordToken DO_KEYWORD = JetKeywordToken.keyword("do"); - JetKeywordToken MATCH_KEYWORD = JetKeywordToken.keyword("match"); - JetKeywordToken CASE_KEYWORD = JetKeywordToken.keyword("case"); + JetKeywordToken WHEN_KEYWORD = JetKeywordToken.keyword("when"); // TODO: Discuss "This" keyword JetKeywordToken CAPITALIZED_THIS_KEYWORD = JetKeywordToken.keyword("This"); @@ -136,7 +135,7 @@ public interface JetTokens { THIS_KEYWORD, VAL_KEYWORD, VAR_KEYWORD, FUN_KEYWORD, EXTENSION_KEYWORD, FOR_KEYWORD, NULL_KEYWORD, TYPEOF_KEYWORD, NEW_KEYWORD, TRUE_KEYWORD, FALSE_KEYWORD, IS_KEYWORD, IN_KEYWORD, THROW_KEYWORD, RETURN_KEYWORD, BREAK_KEYWORD, CONTINUE_KEYWORD, OBJECT_KEYWORD, IF_KEYWORD, - ELSE_KEYWORD, WHILE_KEYWORD, DO_KEYWORD, MATCH_KEYWORD, TRY_KEYWORD, CASE_KEYWORD, + ELSE_KEYWORD, WHILE_KEYWORD, DO_KEYWORD, TRY_KEYWORD, WHEN_KEYWORD, NOT_IN, NOT_IS, CAPITALIZED_THIS_KEYWORD ); @@ -159,5 +158,5 @@ public interface JetTokens { TokenSet OPERATIONS = TokenSet.create(AS_KEYWORD, IS_KEYWORD, IN_KEYWORD, DOT, PLUSPLUS, MINUSMINUS, MUL, PLUS, MINUS, EXCL, DIV, PERC, LT, GT, LTEQ, GTEQ, EQEQEQ, ARROW, EXCLEQEQEQ, EQEQ, EXCLEQ, ANDAND, OROR, SAFE_ACCESS, ELVIS, MAP, FILTER, QUEST, COLON, SEMICOLON, RANGE, EQ, MULTEQ, DIVEQ, PERCEQ, PLUSEQ, MINUSEQ, - NOT_IN, NOT_IS, HASH, IDENTIFIER, MATCH_KEYWORD); + NOT_IN, NOT_IS, HASH, IDENTIFIER); } diff --git a/idea/src/org/jetbrains/jet/lexer/_JetLexer.java b/idea/src/org/jetbrains/jet/lexer/_JetLexer.java index 374f83e8050..d7444a7f6bb 100644 --- a/idea/src/org/jetbrains/jet/lexer/_JetLexer.java +++ b/idea/src/org/jetbrains/jet/lexer/_JetLexer.java @@ -1,4 +1,4 @@ -/* The following code was generated by JFlex 1.4.3 on 1/12/11 7:24 PM */ +/* The following code was generated by JFlex 1.4.3 on 1/13/11 3:29 PM */ /* It's an automatically generated code. Do not modify it. */ package org.jetbrains.jet.lexer; @@ -13,7 +13,7 @@ import org.jetbrains.jet.lexer.JetTokens; /** * This class is a scanner generated by * JFlex 1.4.3 - * on 1/12/11 7:24 PM from the specification file + * on 1/13/11 3:29 PM from the specification file * /home/user/work/jet/idea/src/org/jetbrains/jet/lexer/Jet.flex */ class _JetLexer implements FlexLexer { @@ -140,26 +140,26 @@ class _JetLexer implements FlexLexer { private static final String ZZ_ACTION_PACKED_0 = "\1\0\1\1\1\2\1\3\1\4\1\1\1\3\1\5"+ - "\1\6\1\2\1\7\1\10\1\11\1\12\17\3\1\13"+ + "\1\6\1\2\1\7\1\10\1\11\1\12\16\3\1\13"+ "\1\14\1\15\1\16\1\17\2\1\1\20\1\21\1\22"+ "\1\23\1\24\1\25\1\26\1\27\1\30\1\31\1\32"+ "\1\33\1\34\3\35\1\0\1\36\1\0\1\37\1\40"+ "\1\41\1\42\1\0\2\2\1\35\1\43\1\44\1\45"+ - "\1\46\1\47\1\50\2\11\3\12\3\3\1\51\11\3"+ + "\1\46\1\47\1\50\2\11\3\12\3\3\1\51\7\3"+ "\1\52\1\53\1\54\12\3\1\55\1\56\1\57\1\0"+ "\1\60\1\61\1\62\1\63\1\64\1\65\1\66\1\67"+ "\1\70\1\71\1\72\1\35\1\3\1\0\1\40\1\73"+ - "\1\0\1\34\3\0\1\12\1\74\1\3\1\75\10\3"+ + "\1\0\1\34\3\0\1\12\1\74\1\3\1\75\6\3"+ "\1\76\3\3\1\77\2\3\1\100\1\3\1\101\1\102"+ - "\3\3\1\103\1\104\1\105\1\106\1\107\1\110\1\36"+ - "\1\0\2\73\1\0\1\35\2\0\1\3\1\111\2\3"+ - "\1\112\1\113\2\3\1\114\1\115\1\116\6\3\1\117"+ - "\1\40\1\0\1\35\1\0\1\3\1\120\2\3\1\121"+ - "\1\3\1\122\2\3\1\123\1\124\1\125\1\74\3\3"+ - "\1\126\1\127\1\130\5\3\1\131\1\132\1\133"; + "\4\3\1\103\1\104\1\105\1\106\1\107\1\110\1\36"+ + "\1\0\2\73\1\0\1\35\2\0\1\3\1\111\1\3"+ + "\1\112\2\3\1\113\1\114\1\115\5\3\1\116\1\3"+ + "\1\117\1\40\1\0\1\35\1\0\3\3\1\120\1\3"+ + "\1\121\2\3\1\122\1\123\1\124\1\74\3\3\1\125"+ + "\1\126\1\127\5\3\1\130\1\131\1\132"; private static int [] zzUnpackAction() { - int [] result = new int[214]; + int [] result = new int[208]; int offset = 0; offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result); return result; @@ -188,32 +188,31 @@ class _JetLexer implements FlexLexer { "\0\u0210\0\u0252\0\u0294\0\u02d6\0\u0318\0\u035a\0\u039c\0\u03de"+ "\0\u0420\0\u0462\0\u04a4\0\u04e6\0\u0528\0\u056a\0\u05ac\0\u05ee"+ "\0\u0630\0\u0672\0\u06b4\0\u06f6\0\u0738\0\u077a\0\u07bc\0\u07fe"+ - "\0\u0840\0\u0882\0\u08c4\0\u0906\0\u0948\0\102\0\u098a\0\102"+ + "\0\u0840\0\u0882\0\u08c4\0\u0906\0\102\0\u0948\0\102\0\102"+ "\0\102\0\102\0\102\0\102\0\102\0\102\0\102\0\102"+ - "\0\102\0\102\0\u09cc\0\u0a0e\0\u0a50\0\u0a92\0\u0ad4\0\u0b16"+ - "\0\u0b58\0\102\0\102\0\u0b9a\0\u0bdc\0\u0c1e\0\u0c60\0\102"+ - "\0\102\0\102\0\102\0\102\0\102\0\102\0\u0ca2\0\u0ce4"+ - "\0\u0d26\0\u0d68\0\u0daa\0\u0dec\0\u0e2e\0\306\0\u0e70\0\u0eb2"+ - "\0\u0ef4\0\u0f36\0\u0f78\0\u0fba\0\u0ffc\0\u103e\0\u1080\0\306"+ - "\0\306\0\306\0\u10c2\0\u1104\0\u1146\0\u1188\0\u11ca\0\u120c"+ - "\0\u124e\0\u1290\0\u12d2\0\u1314\0\306\0\u1356\0\102\0\u1398"+ - "\0\u13da\0\102\0\102\0\102\0\102\0\102\0\102\0\102"+ - "\0\102\0\102\0\102\0\u141c\0\102\0\u145e\0\u14a0\0\u14e2"+ - "\0\u1524\0\u1524\0\u1566\0\u15a8\0\u15ea\0\102\0\u162c\0\u166e"+ - "\0\306\0\u16b0\0\u16f2\0\u1734\0\u1776\0\u17b8\0\u17fa\0\u183c"+ - "\0\u187e\0\306\0\u18c0\0\u1902\0\u1944\0\306\0\u1986\0\u19c8"+ - "\0\306\0\u1a0a\0\306\0\306\0\u1a4c\0\u1a8e\0\u1ad0\0\306"+ - "\0\306\0\102\0\102\0\102\0\102\0\102\0\u1b12\0\u1b54"+ - "\0\102\0\u1b96\0\u1bd8\0\u1c1a\0\u1c5c\0\u1c9e\0\306\0\u1ce0"+ - "\0\u1d22\0\306\0\306\0\u1d64\0\u1da6\0\306\0\u1de8\0\306"+ - "\0\u1e2a\0\u1e6c\0\u1eae\0\u1ef0\0\u1f32\0\u1f74\0\306\0\102"+ - "\0\u1fb6\0\u1524\0\u1ff8\0\u203a\0\306\0\u207c\0\u20be\0\306"+ - "\0\u2100\0\306\0\u2142\0\u2184\0\306\0\306\0\306\0\102"+ - "\0\u21c6\0\u2208\0\u224a\0\306\0\306\0\306\0\u228c\0\u22ce"+ - "\0\u2310\0\u2352\0\u2394\0\306\0\306\0\306"; + "\0\102\0\u098a\0\u09cc\0\u0a0e\0\u0a50\0\u0a92\0\u0ad4\0\u0b16"+ + "\0\102\0\102\0\u0b58\0\u0b9a\0\u0bdc\0\u0c1e\0\102\0\102"+ + "\0\102\0\102\0\102\0\102\0\102\0\u0c60\0\u0ca2\0\u0ce4"+ + "\0\u0d26\0\u0d68\0\u0daa\0\u0dec\0\306\0\u0e2e\0\u0e70\0\u0eb2"+ + "\0\u0ef4\0\u0f36\0\u0f78\0\u0fba\0\306\0\306\0\306\0\u0ffc"+ + "\0\u103e\0\u1080\0\u10c2\0\u1104\0\u1146\0\u1188\0\u11ca\0\u120c"+ + "\0\u124e\0\306\0\u1290\0\102\0\u12d2\0\u1314\0\102\0\102"+ + "\0\102\0\102\0\102\0\102\0\102\0\102\0\102\0\102"+ + "\0\u1356\0\102\0\u1398\0\u13da\0\u141c\0\u145e\0\u145e\0\u14a0"+ + "\0\u14e2\0\u1524\0\102\0\u1566\0\u15a8\0\306\0\u15ea\0\u162c"+ + "\0\u166e\0\u16b0\0\u16f2\0\u1734\0\306\0\u1776\0\u17b8\0\u17fa"+ + "\0\306\0\u183c\0\u187e\0\306\0\u18c0\0\306\0\306\0\u1902"+ + "\0\u1944\0\u1986\0\u19c8\0\306\0\306\0\102\0\102\0\102"+ + "\0\102\0\102\0\u1a0a\0\u1a4c\0\102\0\u1a8e\0\u1ad0\0\u1b12"+ + "\0\u1b54\0\u1b96\0\306\0\u1bd8\0\306\0\u1c1a\0\u1c5c\0\306"+ + "\0\u1c9e\0\306\0\u1ce0\0\u1d22\0\u1d64\0\u1da6\0\u1de8\0\306"+ + "\0\u1e2a\0\306\0\102\0\u1e6c\0\u145e\0\u1eae\0\u1ef0\0\u1f32"+ + "\0\u1f74\0\306\0\u1fb6\0\306\0\u1ff8\0\u203a\0\306\0\306"+ + "\0\306\0\102\0\u207c\0\u20be\0\u2100\0\306\0\306\0\306"+ + "\0\u2142\0\u2184\0\u21c6\0\u2208\0\u224a\0\306\0\306\0\306"; private static int [] zzUnpackRowMap() { - int [] result = new int[214]; + int [] result = new int[208]; int offset = 0; offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result); return result; @@ -238,240 +237,230 @@ class _JetLexer implements FlexLexer { private static final String ZZ_TRANS_PACKED_0 = "\1\2\1\3\1\4\1\5\1\4\1\2\1\6\1\7"+ "\1\10\1\11\1\5\1\12\4\4\1\13\1\4\1\14"+ - "\1\4\1\15\1\2\1\16\1\17\1\20\1\21\1\22"+ - "\2\4\1\23\1\4\1\24\1\25\1\26\1\4\1\27"+ - "\1\4\1\30\1\31\1\4\1\32\3\4\1\33\1\34"+ - "\1\35\1\36\1\37\1\40\1\41\1\42\1\43\1\44"+ - "\1\45\1\46\1\47\1\50\1\51\1\52\1\53\1\54"+ - "\1\55\1\56\1\57\1\60\103\0\1\3\11\0\1\3"+ - "\2\0\1\61\1\62\1\63\1\64\10\0\1\64\12\0"+ - "\1\62\4\0\1\61\3\0\1\62\24\0\2\4\1\0"+ + "\1\4\1\15\1\2\1\16\1\17\1\20\1\4\1\21"+ + "\2\4\1\22\1\4\1\23\1\24\1\25\1\4\1\26"+ + "\1\4\1\27\1\30\1\4\1\31\3\4\1\32\1\33"+ + "\1\34\1\35\1\36\1\37\1\40\1\41\1\42\1\43"+ + "\1\44\1\45\1\46\1\47\1\50\1\51\1\52\1\53"+ + "\1\54\1\55\1\56\1\57\103\0\1\3\11\0\1\3"+ + "\2\0\1\60\1\61\1\62\1\63\10\0\1\63\12\0"+ + "\1\61\4\0\1\60\3\0\1\61\24\0\2\4\1\0"+ "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ "\1\4\3\0\30\4\26\0\1\5\6\0\1\5\71\0"+ - "\1\65\1\0\1\65\2\0\1\65\4\0\4\65\1\0"+ - "\1\65\1\0\1\65\3\0\30\65\24\0\1\4\1\66"+ - "\1\0\1\66\1\4\1\67\1\66\3\0\1\4\4\66"+ - "\1\0\1\66\1\0\1\66\3\0\30\66\33\0\1\70"+ - "\1\71\45\0\1\72\101\0\1\73\23\0\1\74\11\0"+ - "\1\74\1\75\1\76\1\61\1\62\1\63\1\64\10\0"+ - "\1\64\3\0\1\75\6\0\1\62\1\76\3\0\1\61"+ - "\3\0\1\62\24\0\1\77\7\0\1\100\1\0\1\77"+ - "\4\0\1\101\45\0\1\102\35\0\1\103\34\0\1\104"+ - "\3\0\1\105\16\0\12\15\1\0\11\15\1\106\1\107"+ - "\54\15\12\110\1\0\12\110\1\111\1\112\53\110\1\0"+ + "\1\64\1\0\1\64\2\0\1\64\4\0\4\64\1\0"+ + "\1\64\1\0\1\64\3\0\30\64\24\0\1\4\1\65"+ + "\1\0\1\65\1\4\1\66\1\65\3\0\1\4\4\65"+ + "\1\0\1\65\1\0\1\65\3\0\30\65\33\0\1\67"+ + "\1\70\45\0\1\71\101\0\1\72\23\0\1\73\11\0"+ + "\1\73\1\74\1\75\1\60\1\61\1\62\1\63\10\0"+ + "\1\63\3\0\1\74\6\0\1\61\1\75\3\0\1\60"+ + "\3\0\1\61\24\0\1\76\7\0\1\77\1\0\1\76"+ + "\4\0\1\100\45\0\1\101\35\0\1\102\34\0\1\103"+ + "\3\0\1\104\16\0\12\15\1\0\11\15\1\105\1\106"+ + "\54\15\12\107\1\0\12\107\1\110\1\111\53\107\1\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\1\4\1\113\1\4\1\114"+ - "\7\4\1\115\14\4\24\0\2\4\1\0\2\4\1\0"+ + "\1\4\1\0\1\4\3\0\1\4\1\112\1\4\1\113"+ + "\7\4\1\114\14\4\24\0\2\4\1\0\2\4\1\0"+ "\1\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\4\4\1\116\23\4\24\0\2\4\1\0\2\4\1\0"+ + "\4\4\1\115\23\4\24\0\2\4\1\0\2\4\1\0"+ "\1\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\1\4\1\117\26\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\7\4\1\120\13\4\1\121\4\4\24\0\2\4\1\0"+ + "\7\4\1\116\13\4\1\117\4\4\24\0\2\4\1\0"+ "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\1\4\1\122\10\4\1\123\10\4\1\124"+ - "\4\4\24\0\2\4\1\0\2\4\1\0\1\4\3\0"+ - "\5\4\1\0\1\4\1\0\1\4\3\0\14\4\1\125"+ - "\1\126\4\4\1\127\5\4\24\0\2\4\1\0\2\4"+ - "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\1\130\3\4\1\131\11\4\1\132\11\4\24\0"+ + "\1\4\3\0\12\4\1\120\10\4\1\121\4\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\13\4\1\133\3\4\1\134"+ - "\10\4\24\0\2\4\1\0\2\4\1\0\1\4\3\0"+ - "\5\4\1\0\1\4\1\0\1\4\3\0\3\4\1\135"+ - "\24\4\24\0\2\4\1\0\2\4\1\0\1\4\3\0"+ - "\5\4\1\0\1\4\1\0\1\4\3\0\1\4\1\136"+ - "\10\4\1\137\1\140\14\4\24\0\2\4\1\0\2\4"+ - "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\14\4\1\141\13\4\24\0\2\4\1\0\2\4"+ - "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\22\4\1\142\5\4\24\0\2\4\1\0\2\4"+ - "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\22\4\1\143\5\4\24\0\2\4\1\0\2\4"+ - "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\1\4\1\144\26\4\24\0\2\4\1\0\2\4"+ - "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\12\4\1\145\15\4\102\0\1\146\3\0\1\147"+ - "\56\0\1\150\16\0\1\151\101\0\1\152\1\0\1\153"+ - "\77\0\1\154\101\0\1\155\106\0\1\156\102\0\1\157"+ - "\34\0\1\160\46\0\1\161\71\0\1\162\23\0\1\77"+ - "\11\0\1\77\3\0\1\62\1\163\1\64\10\0\1\64"+ - "\12\0\1\62\10\0\1\62\24\0\1\164\11\0\1\164"+ - "\3\0\1\62\2\0\1\164\22\0\1\62\10\0\1\62"+ - "\2\0\1\164\21\0\2\65\1\0\2\65\1\165\1\65"+ - "\3\0\5\65\1\0\1\65\1\0\1\65\3\0\30\65"+ - "\24\0\2\66\1\0\2\66\1\0\1\66\3\0\5\66"+ - "\1\0\1\66\1\0\1\66\3\0\30\66\25\0\1\166"+ - "\1\0\1\166\2\0\1\166\4\0\4\166\1\0\1\166"+ - "\1\0\1\166\3\0\30\166\23\0\12\70\1\0\67\70"+ - "\11\167\1\170\70\167\1\0\1\74\11\0\1\74\3\0"+ - "\1\62\1\77\1\64\10\0\1\64\12\0\1\62\10\0"+ - "\1\62\23\0\1\171\2\75\7\171\1\0\1\75\1\171"+ - "\1\75\1\172\1\75\1\173\1\75\1\171\1\174\4\171"+ - "\1\75\1\171\1\75\1\171\1\174\1\75\7\171\2\75"+ - "\3\171\1\172\3\171\1\75\23\171\1\0\1\76\11\0"+ - "\1\76\2\0\1\61\1\0\1\175\31\0\1\61\30\0"+ - "\1\77\11\0\1\77\3\0\1\62\1\0\1\64\10\0"+ - "\1\64\12\0\1\62\10\0\1\62\23\0\12\15\1\0"+ - "\67\15\12\110\1\0\12\110\1\111\1\176\65\110\1\0"+ - "\67\110\26\0\1\177\54\0\2\4\1\0\2\4\1\0"+ - "\1\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\2\4\1\200\25\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\21\4\1\201\6\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\23\4\1\202\4\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\10\4\1\203\17\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\10\4\1\204\17\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\4\4\1\205\23\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\4\4\1\206\23\4\24\0\2\4\1\0\2\4\1\0"+ - "\1\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ - "\1\207\27\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\1\4\1\0\1\4\3\0\14\4\1\122\1\123\4\4"+ + "\1\124\5\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\1\125"+ + "\3\4\1\126\11\4\1\127\11\4\24\0\2\4\1\0"+ + "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\13\4\1\130\3\4\1\131\10\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\3\4\1\132\24\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\1\4\1\133\10\4\1\134"+ + "\1\135\14\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\14\4"+ + "\1\136\13\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\22\4"+ + "\1\137\5\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\22\4"+ + "\1\140\5\4\24\0\2\4\1\0\2\4\1\0\1\4"+ "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\1\4"+ - "\1\210\26\4\24\0\2\4\1\0\2\4\1\0\1\4"+ - "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\13\4"+ - "\1\211\1\4\1\212\12\4\24\0\2\4\1\0\2\4"+ + "\1\141\26\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\12\4"+ + "\1\142\15\4\102\0\1\143\3\0\1\144\56\0\1\145"+ + "\16\0\1\146\101\0\1\147\1\0\1\150\77\0\1\151"+ + "\101\0\1\152\106\0\1\153\102\0\1\154\34\0\1\155"+ + "\46\0\1\156\71\0\1\157\23\0\1\76\11\0\1\76"+ + "\3\0\1\61\1\160\1\63\10\0\1\63\12\0\1\61"+ + "\10\0\1\61\24\0\1\161\11\0\1\161\3\0\1\61"+ + "\2\0\1\161\22\0\1\61\10\0\1\61\2\0\1\161"+ + "\21\0\2\64\1\0\2\64\1\162\1\64\3\0\5\64"+ + "\1\0\1\64\1\0\1\64\3\0\30\64\24\0\2\65"+ + "\1\0\2\65\1\0\1\65\3\0\5\65\1\0\1\65"+ + "\1\0\1\65\3\0\30\65\25\0\1\163\1\0\1\163"+ + "\2\0\1\163\4\0\4\163\1\0\1\163\1\0\1\163"+ + "\3\0\30\163\23\0\12\67\1\0\67\67\11\164\1\165"+ + "\70\164\1\0\1\73\11\0\1\73\3\0\1\61\1\76"+ + "\1\63\10\0\1\63\12\0\1\61\10\0\1\61\23\0"+ + "\1\166\2\74\7\166\1\0\1\74\1\166\1\74\1\167"+ + "\1\74\1\170\1\74\1\166\1\171\4\166\1\74\1\166"+ + "\1\74\1\166\1\171\1\74\7\166\2\74\3\166\1\167"+ + "\3\166\1\74\23\166\1\0\1\75\11\0\1\75\2\0"+ + "\1\60\1\0\1\172\31\0\1\60\30\0\1\76\11\0"+ + "\1\76\3\0\1\61\1\0\1\63\10\0\1\63\12\0"+ + "\1\61\10\0\1\61\23\0\12\15\1\0\67\15\12\107"+ + "\1\0\12\107\1\110\1\173\65\107\1\0\67\107\26\0"+ + "\1\174\54\0\2\4\1\0\2\4\1\0\1\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\2\4\1\175"+ + "\25\4\24\0\2\4\1\0\2\4\1\0\1\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\21\4\1\176"+ + "\6\4\24\0\2\4\1\0\2\4\1\0\1\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\23\4\1\177"+ + "\4\4\24\0\2\4\1\0\2\4\1\0\1\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\10\4\1\200"+ + "\17\4\24\0\2\4\1\0\2\4\1\0\1\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\4\4\1\201"+ + "\23\4\24\0\2\4\1\0\2\4\1\0\1\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\1\202\27\4"+ + "\24\0\2\4\1\0\2\4\1\0\1\4\3\0\5\4"+ + "\1\0\1\4\1\0\1\4\3\0\1\4\1\203\26\4"+ + "\24\0\2\4\1\0\2\4\1\0\1\4\3\0\5\4"+ + "\1\0\1\4\1\0\1\4\3\0\13\4\1\204\1\4"+ + "\1\205\12\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\5\4"+ + "\1\206\22\4\24\0\2\4\1\0\2\4\1\0\1\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\11\4"+ + "\1\207\2\4\1\210\13\4\24\0\2\4\1\0\2\4"+ "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\5\4\1\213\22\4\24\0\2\4\1\0\2\4"+ + "\3\0\10\4\1\211\17\4\24\0\2\4\1\0\2\4"+ "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ - "\3\0\11\4\1\214\2\4\1\215\13\4\24\0\2\4"+ + "\3\0\20\4\1\212\7\4\24\0\2\4\1\0\2\4"+ + "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\10\4\1\213\5\4\1\214\11\4\24\0\2\4"+ "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\10\4\1\216\17\4\24\0\2\4"+ + "\1\0\1\4\3\0\23\4\1\215\4\4\24\0\2\4"+ "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\20\4\1\217\7\4\24\0\2\4"+ + "\1\0\1\4\3\0\14\4\1\216\13\4\24\0\2\4"+ "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\10\4\1\220\5\4\1\221\11\4"+ - "\24\0\2\4\1\0\2\4\1\0\1\4\3\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\23\4\1\222\4\4"+ - "\24\0\2\4\1\0\2\4\1\0\1\4\3\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\14\4\1\223\13\4"+ - "\24\0\2\4\1\0\2\4\1\0\1\4\3\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\1\224\27\4\24\0"+ + "\1\0\1\4\3\0\1\217\27\4\24\0\2\4\1\0"+ + "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\3\4\1\220\24\4\24\0\2\4\1\0"+ + "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\3\4\1\221\5\4\1\222\16\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\225\24\4\24\0"+ + "\1\4\1\0\1\4\3\0\11\4\1\223\16\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\11\4\1\226\16\4\24\0"+ + "\1\4\1\0\1\4\3\0\14\4\1\224\6\4\1\225"+ + "\4\4\102\0\1\226\51\0\1\227\3\0\1\230\125\0"+ + "\1\231\23\0\1\161\11\0\1\161\3\0\1\61\25\0"+ + "\1\61\10\0\1\61\24\0\2\163\1\0\2\163\1\232"+ + "\1\163\3\0\5\163\1\0\1\163\1\0\1\163\3\0"+ + "\30\163\23\0\11\164\1\233\70\164\10\234\1\235\1\165"+ + "\70\234\1\0\2\166\10\0\1\166\1\0\1\166\1\0"+ + "\1\166\1\0\1\166\1\0\1\236\4\0\1\166\1\0"+ + "\1\166\1\0\1\236\1\166\7\0\2\166\7\0\1\166"+ + "\24\0\2\166\10\0\1\166\1\0\1\166\1\0\1\166"+ + "\1\160\1\166\1\0\1\236\4\0\1\166\1\0\1\166"+ + "\1\0\1\236\1\166\7\0\2\166\7\0\1\166\24\0"+ + "\1\237\1\166\10\0\1\237\1\0\1\166\1\0\1\166"+ + "\1\0\1\166\1\240\1\236\4\0\1\166\1\0\1\166"+ + "\1\0\1\236\1\166\7\0\2\166\7\0\1\166\2\0"+ + "\1\240\40\0\1\160\61\0\26\174\1\241\53\174\1\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\11\4\1\227\16\4\24\0"+ + "\1\4\1\0\1\4\3\0\3\4\1\242\24\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\14\4\1\230\6\4\1\231"+ - "\4\4\102\0\1\232\51\0\1\233\3\0\1\234\125\0"+ - "\1\235\23\0\1\164\11\0\1\164\3\0\1\62\25\0"+ - "\1\62\10\0\1\62\24\0\2\166\1\0\2\166\1\236"+ - "\1\166\3\0\5\166\1\0\1\166\1\0\1\166\3\0"+ - "\30\166\23\0\11\167\1\237\70\167\10\240\1\241\1\170"+ - "\70\240\1\0\2\171\10\0\1\171\1\0\1\171\1\0"+ - "\1\171\1\0\1\171\1\0\1\242\4\0\1\171\1\0"+ - "\1\171\1\0\1\242\1\171\7\0\2\171\7\0\1\171"+ - "\24\0\2\171\10\0\1\171\1\0\1\171\1\0\1\171"+ - "\1\163\1\171\1\0\1\242\4\0\1\171\1\0\1\171"+ - "\1\0\1\242\1\171\7\0\2\171\7\0\1\171\24\0"+ - "\1\243\1\171\10\0\1\243\1\0\1\171\1\0\1\171"+ - "\1\0\1\171\1\244\1\242\4\0\1\171\1\0\1\171"+ - "\1\0\1\242\1\171\7\0\2\171\7\0\1\171\2\0"+ - "\1\244\40\0\1\163\61\0\26\177\1\245\53\177\1\0"+ + "\1\4\1\0\1\4\3\0\23\4\1\243\4\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\246\24\4\24\0"+ + "\1\4\1\0\1\4\3\0\3\4\1\244\24\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\23\4\1\247\4\4\24\0"+ + "\1\4\1\0\1\4\3\0\3\4\1\245\24\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\6\4\1\250\21\4\24\0"+ + "\1\4\1\0\1\4\3\0\10\4\1\246\17\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\4\4\1\247\23\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\3\4\1\250\24\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ "\1\4\1\0\1\4\3\0\3\4\1\251\24\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\252\24\4\24\0"+ + "\1\4\1\0\1\4\3\0\4\4\1\252\23\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\253\24\4\24\0"+ + "\1\4\1\0\1\4\3\0\12\4\1\253\15\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\10\4\1\254\17\4\24\0"+ + "\1\4\1\0\1\4\3\0\3\4\1\254\24\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\4\4\1\255\23\4\24\0"+ + "\1\4\1\0\1\4\3\0\13\4\1\255\14\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\256\24\4\24\0"+ + "\1\4\1\0\1\4\3\0\4\4\1\256\23\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\257\24\4\24\0"+ + "\1\4\1\0\1\4\3\0\1\4\1\257\26\4\24\0"+ "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\4\4\1\260\23\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\12\4\1\261\15\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\262\24\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\13\4\1\263\14\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\4\4\1\264\23\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\1\4\1\265\26\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\23\4\1\266\4\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\4\4\1\267\23\4\23\0"+ - "\10\167\1\270\1\237\70\167\11\240\1\271\70\240\1\0"+ - "\1\164\11\0\1\164\6\0\1\244\36\0\1\244\21\0"+ - "\1\243\1\171\10\0\1\243\1\0\1\171\1\0\1\272"+ - "\1\0\1\171\1\0\1\242\4\0\1\171\1\0\1\171"+ - "\1\0\1\242\1\171\7\0\1\272\1\171\7\0\1\272"+ - "\24\0\1\164\11\0\1\164\66\0\26\177\1\273\53\177"+ - "\1\0\2\4\1\0\2\4\1\0\1\4\3\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\4\4\1\274\23\4"+ - "\24\0\2\4\1\0\2\4\1\0\1\4\3\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\22\4\1\275\5\4"+ - "\24\0\2\4\1\0\2\4\1\0\1\4\3\0\5\4"+ - "\1\0\1\4\1\0\1\4\3\0\1\276\27\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\11\4\1\277\16\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\4\4\1\300\23\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\12\4\1\301\15\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\21\4\1\302\6\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\6\4\1\303\21\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\14\4\1\304\13\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\305\24\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\24\4\1\306\3\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\307\24\4\23\0"+ - "\10\240\1\241\1\271\70\240\26\177\1\310\53\177\1\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\5\4\1\311\22\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\4\4\1\312\23\4\24\0"+ - "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ - "\1\4\1\0\1\4\3\0\1\313\27\4\24\0\2\4"+ + "\1\4\1\0\1\4\3\0\1\260\27\4\24\0\2\4"+ "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\16\4\1\314\11\4\24\0\2\4"+ + "\1\0\1\4\3\0\23\4\1\261\4\4\24\0\2\4"+ "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\10\4\1\315\17\4\24\0\2\4"+ + "\1\0\1\4\3\0\4\4\1\262\23\4\23\0\10\164"+ + "\1\263\1\233\70\164\11\234\1\264\70\234\1\0\1\161"+ + "\11\0\1\161\6\0\1\240\36\0\1\240\21\0\1\237"+ + "\1\166\10\0\1\237\1\0\1\166\1\0\1\265\1\0"+ + "\1\166\1\0\1\236\4\0\1\166\1\0\1\166\1\0"+ + "\1\236\1\166\7\0\1\265\1\166\7\0\1\265\24\0"+ + "\1\161\11\0\1\161\66\0\26\174\1\266\53\174\1\0"+ + "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\4\4\1\267\23\4\24\0"+ + "\2\4\1\0\2\4\1\0\1\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\1\270\27\4\24\0\2\4"+ "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ - "\1\0\1\4\3\0\1\316\27\4\24\0\2\4\1\0"+ + "\1\0\1\4\3\0\11\4\1\271\16\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\4\4\1\272\23\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\12\4\1\273\15\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\21\4\1\274\6\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\6\4\1\275\21\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\14\4\1\276\13\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\3\4\1\277\24\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\24\4\1\300\3\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\3\4\1\301\24\4\23\0\10\234"+ + "\1\235\1\264\70\234\26\174\1\302\53\174\1\0\2\4"+ + "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\5\4\1\303\22\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\4\4\1\304\23\4\24\0\2\4"+ + "\1\0\2\4\1\0\1\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\1\305\27\4\24\0\2\4\1\0"+ "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\1\4\1\317\26\4\24\0\2\4\1\0"+ + "\1\4\3\0\16\4\1\306\11\4\24\0\2\4\1\0"+ "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\11\4\1\320\16\4\24\0\2\4\1\0"+ + "\1\4\3\0\10\4\1\307\17\4\24\0\2\4\1\0"+ "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\13\4\1\321\14\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\6\4\1\322\21\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\12\4\1\323\15\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\3\4\1\324\24\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\3\4\1\325\24\4\24\0\2\4\1\0"+ - "\2\4\1\0\1\4\3\0\5\4\1\0\1\4\1\0"+ - "\1\4\3\0\1\326\27\4\23\0"; + "\1\4\3\0\1\310\27\4\24\0\2\4\1\0\2\4"+ + "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\1\4\1\311\26\4\24\0\2\4\1\0\2\4"+ + "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\11\4\1\312\16\4\24\0\2\4\1\0\2\4"+ + "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\13\4\1\313\14\4\24\0\2\4\1\0\2\4"+ + "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\6\4\1\314\21\4\24\0\2\4\1\0\2\4"+ + "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\12\4\1\315\15\4\24\0\2\4\1\0\2\4"+ + "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\3\4\1\316\24\4\24\0\2\4\1\0\2\4"+ + "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\3\4\1\317\24\4\24\0\2\4\1\0\2\4"+ + "\1\0\1\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\1\320\27\4\23\0"; private static int [] zzUnpackTrans() { - int [] result = new int[9174]; + int [] result = new int[8844]; int offset = 0; offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result); return result; @@ -512,15 +501,15 @@ class _JetLexer implements FlexLexer { private static final int [] ZZ_ATTRIBUTE = zzUnpackAttribute(); private static final String ZZ_ATTRIBUTE_PACKED_0 = - "\1\0\1\11\43\1\1\11\1\1\13\11\2\1\1\0"+ - "\1\1\1\0\2\1\2\11\1\0\3\1\7\11\40\1"+ + "\1\0\1\11\42\1\1\11\1\1\13\11\2\1\1\0"+ + "\1\1\1\0\2\1\2\11\1\0\3\1\7\11\36\1"+ "\1\11\1\0\1\1\12\11\1\1\1\11\1\0\2\1"+ - "\1\0\1\1\3\0\1\11\33\1\5\11\1\0\1\1"+ - "\1\11\1\0\1\1\2\0\22\1\1\11\1\0\1\1"+ - "\1\0\14\1\1\11\16\1"; + "\1\0\1\1\3\0\1\11\32\1\5\11\1\0\1\1"+ + "\1\11\1\0\1\1\2\0\21\1\1\11\1\0\1\1"+ + "\1\0\13\1\1\11\16\1"; private static int [] zzUnpackAttribute() { - int [] result = new int[214]; + int [] result = new int[208]; int offset = 0; offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result); return result; @@ -828,367 +817,363 @@ class _JetLexer implements FlexLexer { case 3: { return JetTokens.IDENTIFIER; } - case 92: break; + case 91: break; case 65: { return JetTokens.FOR_KEYWORD ; } - case 93: break; + case 92: break; case 63: { return JetTokens.OUT_KEYWORD ; } - case 94: break; - case 88: + case 93: break; + case 87: { return JetTokens.RETURN_KEYWORD ; } - case 95: break; + case 94: break; case 73: { return JetTokens.NULL_KEYWORD ; } - case 96: break; + case 95: break; case 14: { return JetTokens.LT ; } - case 97: break; + case 96: break; case 45: { return JetTokens.DO_KEYWORD ; } - case 98: break; + case 97: break; case 13: { return JetTokens.PLUS ; } - case 99: break; + case 98: break; case 28: { return JetTokens.LONG_LITERAL; } - case 100: break; + case 99: break; case 60: { return JetTokens.RAW_STRING_LITERAL; } - case 101: break; + case 100: break; case 49: { return JetTokens.PLUSEQ ; } - case 102: break; - case 80: - { return JetTokens.MATCH_KEYWORD ; - } - case 103: break; + case 101: break; case 26: { return JetTokens.COMMA ; } - case 104: break; + case 102: break; case 15: { return JetTokens.GT ; } - case 105: break; + case 103: break; case 4: { return JetTokens.WHITE_SPACE; } - case 106: break; - case 86: + case 104: break; + case 85: { return JetTokens.TYPEOF_KEYWORD ; } - case 107: break; + case 105: break; case 24: { return JetTokens.RPAR ; } - case 108: break; + case 106: break; case 47: { return JetTokens.DOUBLE_ARROW; } - case 109: break; - case 76: + case 107: break; + case 75: { return JetTokens.TRUE_KEYWORD ; } - case 110: break; + case 108: break; case 30: { return JetTokens.FIELD_IDENTIFIER; } - case 111: break; + case 109: break; case 53: { return JetTokens.ANDAND ; } - case 112: break; + case 110: break; case 59: { return JetTokens.DOC_COMMENT; } - case 113: break; + case 111: break; case 29: { return JetTokens.FLOAT_LITERAL; } - case 114: break; + case 112: break; case 31: { return JetTokens.EOL_COMMENT; } - case 115: break; + case 113: break; + case 78: + { return JetTokens.WHEN_KEYWORD ; + } + case 114: break; case 17: { return JetTokens.COLON ; } - case 116: break; + case 115: break; case 51: { return JetTokens.LTEQ ; } - case 117: break; + case 116: break; case 40: { return JetTokens.ARROW ; } - case 118: break; + case 117: break; case 19: { return JetTokens.LBRACKET ; } - case 119: break; + case 118: break; case 58: { yypushback(2); return JetTokens.INTEGER_LITERAL; } - case 120: break; + case 119: break; case 9: { return JetTokens.CHARACTER_LITERAL; } - case 121: break; + case 120: break; case 67: { return JetTokens.VAR_KEYWORD ; } - case 122: break; + case 121: break; case 52: { return JetTokens.GTEQ ; } - case 123: break; + case 122: break; case 2: { return JetTokens.INTEGER_LITERAL; } - case 124: break; + case 123: break; case 22: { return JetTokens.RBRACE ; } - case 125: break; - case 81: + case 124: break; + case 80: { return JetTokens.CLASS_KEYWORD ; } - case 126: break; + case 125: break; case 12: { return JetTokens.EXCL ; } - case 127: break; + case 126: break; case 62: { return JetTokens.TRY_KEYWORD ; } - case 128: break; + case 127: break; case 48: { return JetTokens.EXCLEQ ; } - case 129: break; + case 128: break; case 39: { return JetTokens.MINUSEQ ; } - case 130: break; - case 82: + case 129: break; + case 81: { return JetTokens.THROW_KEYWORD ; } - case 131: break; - case 85: + case 130: break; + case 84: { return JetTokens.WHILE_KEYWORD ; } - case 132: break; + case 131: break; case 38: { return JetTokens.MINUSMINUS; } - case 133: break; - case 89: + case 132: break; + case 88: { return JetTokens.CONTINUE_KEYWORD ; } - case 134: break; + case 133: break; case 70: { return JetTokens.NOT_IN; } - case 135: break; + case 134: break; case 5: { return JetTokens.DIV ; } - case 136: break; + case 135: break; case 56: { return JetTokens.ELVIS ; } - case 137: break; + case 136: break; case 16: { return JetTokens.QUEST ; } - case 138: break; + case 137: break; case 54: { return JetTokens.OROR ; } - case 139: break; + case 138: break; case 18: { return JetTokens.PERC ; } - case 140: break; + case 139: break; case 72: { return JetTokens.EXCLEQEQEQ; } - case 141: break; + case 140: break; case 57: { return JetTokens.PERCEQ ; } - case 142: break; + case 141: break; case 36: { return JetTokens.RANGE ; } - case 143: break; + case 142: break; case 1: { return TokenType.BAD_CHARACTER; } - case 144: break; + case 143: break; case 55: { return JetTokens.SAFE_ACCESS; } - case 145: break; - case 90: + case 144: break; + case 89: { return JetTokens.NAMESPACE_KEYWORD ; } - case 146: break; + case 145: break; case 71: { return JetTokens.NOT_IS; } - case 147: break; + case 146: break; case 6: { return JetTokens.MUL ; } - case 148: break; + case 147: break; case 20: { return JetTokens.RBRACKET ; } - case 149: break; + case 148: break; case 50: { return JetTokens.PLUSPLUS ; } - case 150: break; - case 78: + case 149: break; + case 77: { return JetTokens.THIS_KEYWORD ; } - case 151: break; - case 75: - { return JetTokens.CASE_KEYWORD ; - } - case 152: break; + case 150: break; case 7: { return JetTokens.DOT ; } - case 153: break; + case 151: break; case 25: { return JetTokens.SEMICOLON ; } - case 154: break; + case 152: break; case 44: { return JetTokens.IF_KEYWORD ; } - case 155: break; + case 153: break; case 11: { return JetTokens.EQ ; } - case 156: break; + case 154: break; case 23: { return JetTokens.LPAR ; } - case 157: break; + case 155: break; case 8: { return JetTokens.MINUS ; } - case 158: break; - case 83: + case 156: break; + case 82: { return JetTokens.FALSE_KEYWORD ; } - case 159: break; - case 77: + case 157: break; + case 76: { return JetTokens.TYPE_KEYWORD ; } - case 160: break; + case 158: break; case 64: { return JetTokens.REF_KEYWORD ; } - case 161: break; + case 159: break; case 66: { return JetTokens.FUN_KEYWORD ; } - case 162: break; + case 160: break; case 43: { return JetTokens.IS_KEYWORD ; } - case 163: break; + case 161: break; case 33: { return JetTokens.DIVEQ ; } - case 164: break; - case 91: + case 162: break; + case 90: { return JetTokens.EXTENSION_KEYWORD ; } - case 165: break; + case 163: break; case 74: { return JetTokens.ELSE_KEYWORD ; } - case 166: break; + case 164: break; case 41: { return JetTokens.AS_KEYWORD ; } - case 167: break; + case 165: break; case 42: { return JetTokens.IN_KEYWORD ; } - case 168: break; + case 166: break; case 46: { return JetTokens.EQEQ ; } - case 169: break; + case 167: break; case 68: { return JetTokens.VAL_KEYWORD ; } - case 170: break; + case 168: break; case 69: { return JetTokens.EQEQEQ ; } - case 171: break; + case 169: break; case 79: { return JetTokens.CAPITALIZED_THIS_KEYWORD ; } - case 172: break; + case 170: break; case 61: { return JetTokens.NEW_KEYWORD ; } - case 173: break; + case 171: break; case 34: { return JetTokens.MULTEQ ; } - case 174: break; + case 172: break; case 10: { return JetTokens.STRING_LITERAL; } - case 175: break; + case 173: break; case 21: { return JetTokens.LBRACE ; } - case 176: break; - case 87: + case 174: break; + case 86: { return JetTokens.OBJECT_KEYWORD ; } - case 177: break; - case 84: + case 175: break; + case 83: { return JetTokens.BREAK_KEYWORD ; } - case 178: break; + case 176: break; case 32: { return JetTokens.BLOCK_COMMENT; } - case 179: break; + case 177: break; case 37: { return JetTokens.FILTER ; } - case 180: break; + case 178: break; case 27: { return JetTokens.HASH ; } - case 181: break; + case 179: break; case 35: { return JetTokens.MAP ; } - case 182: break; + case 180: break; default: if (zzInput == YYEOF && zzStartRead == zzCurrentPos) { zzAtEOF = true; diff --git a/idea/testData/psi/AnnotatedExpressions.txt b/idea/testData/psi/AnnotatedExpressions.txt index cdbeafd2645..af82ae24e30 100644 --- a/idea/testData/psi/AnnotatedExpressions.txt +++ b/idea/testData/psi/AnnotatedExpressions.txt @@ -17,8 +17,9 @@ JetFile: AnnotatedExpressions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') REFERENCE_EXPRESSION @@ -31,8 +32,9 @@ JetFile: AnnotatedExpressions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') THIS_EXPRESSION diff --git a/idea/testData/psi/Attributes.txt b/idea/testData/psi/Attributes.txt index df3997567c9..5c88918f6eb 100644 --- a/idea/testData/psi/Attributes.txt +++ b/idea/testData/psi/Attributes.txt @@ -40,19 +40,20 @@ JetFile: Attributes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('foo') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_REFERENCE - USER_TYPE - PsiElement(IDENTIFIER)('A') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - PsiElement(IDENTIFIER)('B') - PsiElement(GT)('>') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + TYPE_ARGUMENT_LIST + PsiElement(LT)('<') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('A') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('B') + PsiElement(GT)('>') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') VALUE_ARGUMENT @@ -66,51 +67,54 @@ JetFile: Attributes.jet PsiElement(RPAR)(')') PsiElement(COMMA)(',') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('ina') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('ina') PsiElement(COMMA)(',') ATTRIBUTE - USER_TYPE - USER_TYPE - USER_TYPE - USER_TYPE - USER_TYPE - USER_TYPE - PsiElement(IDENTIFIER)('foo') + TYPE_REFERENCE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiElement(DOT)('.') + PsiElement(IDENTIFIER)('bar') PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('bar') + PsiElement(IDENTIFIER)('goo') PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('goo') + PsiElement(IDENTIFIER)('doo') + TYPE_ARGUMENT_LIST + PsiElement(LT)('<') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('f') + PsiElement(GT)('>') PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('doo') + PsiElement(IDENTIFIER)('foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE - PsiElement(IDENTIFIER)('f') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('bar') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('goo') PsiElement(GT)('>') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_REFERENCE - USER_TYPE - PsiElement(IDENTIFIER)('bar') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - PsiElement(IDENTIFIER)('goo') - PsiElement(GT)('>') - PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('foo') PsiElement(RBRACKET)(']') PsiWhiteSpace('\n') ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('df') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('df') PsiElement(RBRACKET)(']') PsiWhiteSpace('\n') PsiElement(in)('in') @@ -118,8 +122,9 @@ JetFile: Attributes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('sdfsdf') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('sdfsdf') PsiElement(RBRACKET)(']') PsiWhiteSpace('\n') PsiElement(out)('out') @@ -140,8 +145,9 @@ JetFile: Attributes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('sdfsdf') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('sdfsdf') PsiElement(EQ)('=') BINARY_EXPRESSION INTEGER_CONSTANT @@ -152,15 +158,17 @@ JetFile: Attributes.jet PsiElement(COMMA)(',') PsiWhiteSpace(' ') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace('\n') ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('sdfsdf') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('sdfsdf') PsiElement(EQ)('=') BINARY_EXPRESSION INTEGER_CONSTANT @@ -173,16 +181,18 @@ JetFile: Attributes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(COMMA)(',') PsiWhiteSpace(' ') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('sdfsdf') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('sdfsdf') PsiElement(EQ)('=') BINARY_EXPRESSION INTEGER_CONSTANT @@ -207,27 +217,30 @@ JetFile: Attributes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('sdfsd') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('sdfsd') PsiElement(COMMA)(',') PsiWhiteSpace(' ') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('sdfsd') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('sdfsd') PsiElement(COMMA)(',') PsiWhiteSpace(' ') ATTRIBUTE - USER_TYPE - USER_TYPE - USER_TYPE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(DOT)('.') + PsiElement(IDENTIFIER)('b') PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('b') + PsiElement(IDENTIFIER)('f') PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('f') - PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('c') + PsiElement(IDENTIFIER)('c') PsiElement(RBRACKET)(']') PsiWhiteSpace('\n') PsiElement(private)('private') diff --git a/idea/testData/psi/Attributes_ERR.txt b/idea/testData/psi/Attributes_ERR.txt index 068337a2094..176193c3ef9 100644 --- a/idea/testData/psi/Attributes_ERR.txt +++ b/idea/testData/psi/Attributes_ERR.txt @@ -45,19 +45,20 @@ JetFile: Attributes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('foo') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_REFERENCE - USER_TYPE - PsiElement(IDENTIFIER)('A') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - PsiElement(IDENTIFIER)('B') - PsiElement(GT)('>') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + TYPE_ARGUMENT_LIST + PsiElement(LT)('<') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('A') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('B') + PsiElement(GT)('>') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') VALUE_ARGUMENT @@ -72,51 +73,54 @@ JetFile: Attributes_ERR.jet PsiElement(COMMA)(',') PsiWhiteSpace(' ') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('ina') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('ina') PsiElement(COMMA)(',') ATTRIBUTE - USER_TYPE - USER_TYPE - USER_TYPE - USER_TYPE - USER_TYPE - USER_TYPE - PsiElement(IDENTIFIER)('foo') + TYPE_REFERENCE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiElement(DOT)('.') + PsiElement(IDENTIFIER)('bar') PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('bar') + PsiElement(IDENTIFIER)('goo') PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('goo') + PsiElement(IDENTIFIER)('doo') + TYPE_ARGUMENT_LIST + PsiElement(LT)('<') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('f') + PsiElement(GT)('>') PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('doo') + PsiElement(IDENTIFIER)('foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE - PsiElement(IDENTIFIER)('f') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('bar') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('goo') PsiElement(GT)('>') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_REFERENCE - USER_TYPE - PsiElement(IDENTIFIER)('bar') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - PsiElement(IDENTIFIER)('goo') - PsiElement(GT)('>') - PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('foo') PsiElement(RBRACKET)(']') PsiWhiteSpace('\n') ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('df') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('df') PsiElement(RBRACKET)(']') PsiWhiteSpace('\n') PsiElement(in)('in') @@ -124,8 +128,9 @@ JetFile: Attributes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('sdfsdf') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('sdfsdf') PsiElement(COMMA)(',') PsiErrorElement:Expecting a comma-separated list of attributes @@ -134,12 +139,14 @@ JetFile: Attributes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('s') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('s') PsiElement(COMMA)(',') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('fd') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('fd') PsiErrorElement:Expecting ']' to close an attribute annotation PsiWhiteSpace(' ') @@ -180,27 +187,30 @@ JetFile: Attributes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('sdfsd') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('sdfsd') PsiElement(COMMA)(',') PsiWhiteSpace(' ') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('sdfsd') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('sdfsd') PsiElement(COMMA)(',') PsiWhiteSpace(' ') ATTRIBUTE - USER_TYPE - USER_TYPE - USER_TYPE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(DOT)('.') + PsiElement(IDENTIFIER)('b') PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('b') + PsiElement(IDENTIFIER)('f') PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('f') - PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('c') + PsiElement(IDENTIFIER)('c') PsiElement(RBRACKET)(']') PsiWhiteSpace('\n') PsiElement(private)('private') diff --git a/idea/testData/psi/BabySteps.txt b/idea/testData/psi/BabySteps.txt index 8d8b1da6c14..302cd83305b 100644 --- a/idea/testData/psi/BabySteps.txt +++ b/idea/testData/psi/BabySteps.txt @@ -25,7 +25,7 @@ JetFile: BabySteps.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('doo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -39,7 +39,7 @@ JetFile: BabySteps.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -53,7 +53,7 @@ JetFile: BabySteps.jet PsiWhiteSpace(' ') DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -64,7 +64,7 @@ JetFile: BabySteps.jet PsiWhiteSpace(' ') DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') CLASS_BODY diff --git a/idea/testData/psi/BabySteps_ERR.txt b/idea/testData/psi/BabySteps_ERR.txt index 87b402adde7..4e56c3be8ab 100644 --- a/idea/testData/psi/BabySteps_ERR.txt +++ b/idea/testData/psi/BabySteps_ERR.txt @@ -25,7 +25,7 @@ JetFile: BabySteps_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('doo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -39,7 +39,7 @@ JetFile: BabySteps_ERR.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -55,7 +55,7 @@ JetFile: BabySteps_ERR.jet PsiElement(COMMA)(',') DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -66,7 +66,7 @@ JetFile: BabySteps_ERR.jet PsiWhiteSpace(' ') DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') CLASS_BODY diff --git a/idea/testData/psi/ByCaluses.txt b/idea/testData/psi/ByCaluses.txt index e9adbb677f5..4029b7a19fe 100644 --- a/idea/testData/psi/ByCaluses.txt +++ b/idea/testData/psi/ByCaluses.txt @@ -12,7 +12,7 @@ JetFile: ByCaluses.jet DELEGATION_SPECIFIER_LIST DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -47,7 +47,7 @@ JetFile: ByCaluses.jet DELEGATION_SPECIFIER_LIST DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -98,7 +98,7 @@ JetFile: ByCaluses.jet DELEGATION_SPECIFIER_LIST DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -136,7 +136,7 @@ JetFile: ByCaluses.jet DELEGATION_SPECIFIER_LIST DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -181,7 +181,7 @@ JetFile: ByCaluses.jet DELEGATION_SPECIFIER_LIST DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -229,7 +229,7 @@ JetFile: ByCaluses.jet DELEGATION_SPECIFIER_LIST DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -278,7 +278,7 @@ JetFile: ByCaluses.jet DELEGATION_SPECIFIER_LIST DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiWhiteSpace(' ') PsiElement(by)('by') diff --git a/idea/testData/psi/Constructors.txt b/idea/testData/psi/Constructors.txt index 5d7c6ff3b4b..27eb73d7dff 100644 --- a/idea/testData/psi/Constructors.txt +++ b/idea/testData/psi/Constructors.txt @@ -41,12 +41,12 @@ JetFile: Constructors.jet PsiWhiteSpace(' ') DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -66,7 +66,7 @@ JetFile: Constructors.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -95,12 +95,12 @@ JetFile: Constructors.jet PsiWhiteSpace(' ') DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') VALUE_ARGUMENT_LIST diff --git a/idea/testData/psi/ControlStructures.txt b/idea/testData/psi/ControlStructures.txt index 86a705f982c..73f63572f42 100644 --- a/idea/testData/psi/ControlStructures.txt +++ b/idea/testData/psi/ControlStructures.txt @@ -15,7 +15,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -27,7 +27,7 @@ JetFile: ControlStructures.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -37,7 +37,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -55,7 +55,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -70,7 +70,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -87,7 +87,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -102,7 +102,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -119,7 +119,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -150,7 +150,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -277,7 +277,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Bar') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -305,7 +305,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Bar') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -325,7 +325,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Bar') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -345,7 +345,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Bar') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -373,7 +373,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Bar') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -393,7 +393,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Bar') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -476,7 +476,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') PsiElement(in)('in') @@ -500,7 +500,7 @@ JetFile: ControlStructures.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') PsiElement(in)('in') diff --git a/idea/testData/psi/EOLsOnRollback.txt b/idea/testData/psi/EOLsOnRollback.txt index 5bc25ae0092..b2f04cc1a40 100644 --- a/idea/testData/psi/EOLsOnRollback.txt +++ b/idea/testData/psi/EOLsOnRollback.txt @@ -40,7 +40,7 @@ JetFile: EOLsOnRollback.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('boo') PsiWhiteSpace('\n\n ') TYPEDEF @@ -53,7 +53,7 @@ JetFile: EOLsOnRollback.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiWhiteSpace('\n ') PROPERTY @@ -66,8 +66,9 @@ JetFile: EOLsOnRollback.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(var)('var') @@ -87,8 +88,9 @@ JetFile: EOLsOnRollback.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(val)('val') diff --git a/idea/testData/psi/Enums.txt b/idea/testData/psi/Enums.txt index defe675ee32..1887baa6681 100644 --- a/idea/testData/psi/Enums.txt +++ b/idea/testData/psi/Enums.txt @@ -19,7 +19,7 @@ JetFile: Enums.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -36,7 +36,7 @@ JetFile: Enums.jet INITIALIZER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Color') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -55,7 +55,7 @@ JetFile: Enums.jet INITIALIZER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Color') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -74,7 +74,7 @@ JetFile: Enums.jet INITIALIZER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Color') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -110,7 +110,7 @@ JetFile: Enums.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -127,12 +127,12 @@ JetFile: Enums.jet INITIALIZER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('List') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Nothing') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -159,7 +159,7 @@ JetFile: Enums.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -171,12 +171,12 @@ JetFile: Enums.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('List') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -186,12 +186,12 @@ JetFile: Enums.jet INITIALIZER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('List') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -210,7 +210,7 @@ JetFile: Enums.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Bool') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR diff --git a/idea/testData/psi/Extensions.txt b/idea/testData/psi/Extensions.txt index 67ed4e4e7f0..9fee5fca85c 100644 --- a/idea/testData/psi/Extensions.txt +++ b/idea/testData/psi/Extensions.txt @@ -8,7 +8,7 @@ JetFile: Extensions.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') EXTENSION @@ -21,7 +21,7 @@ JetFile: Extensions.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') EXTENSION @@ -36,7 +36,7 @@ JetFile: Extensions.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') EXTENSION @@ -52,7 +52,7 @@ JetFile: Extensions.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') EXTENSION @@ -90,7 +90,7 @@ JetFile: Extensions.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiElement(SEMICOLON)(';') PsiWhiteSpace('\n') @@ -104,7 +104,7 @@ JetFile: Extensions.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiElement(SEMICOLON)(';') PsiWhiteSpace('\n') @@ -120,7 +120,7 @@ JetFile: Extensions.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiElement(SEMICOLON)(';') PsiWhiteSpace('\n') @@ -137,7 +137,7 @@ JetFile: Extensions.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiElement(SEMICOLON)(';') PsiWhiteSpace('\n') @@ -177,7 +177,7 @@ JetFile: Extensions.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') CLASS_BODY @@ -194,7 +194,7 @@ JetFile: Extensions.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') CLASS_BODY @@ -213,7 +213,7 @@ JetFile: Extensions.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') CLASS_BODY @@ -233,7 +233,7 @@ JetFile: Extensions.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') CLASS_BODY diff --git a/idea/testData/psi/Extensions_ERR.txt b/idea/testData/psi/Extensions_ERR.txt index f33bb7b9f85..002572ab465 100644 --- a/idea/testData/psi/Extensions_ERR.txt +++ b/idea/testData/psi/Extensions_ERR.txt @@ -20,7 +20,7 @@ JetFile: Extensions_ERR.jet PsiErrorElement:Expecting 'for' to specify the type that is being extended TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') EXTENSION @@ -36,7 +36,7 @@ JetFile: Extensions_ERR.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') EXTENSION diff --git a/idea/testData/psi/FunctionCalls.txt b/idea/testData/psi/FunctionCalls.txt index b1f82086d6e..5dda3c00088 100644 --- a/idea/testData/psi/FunctionCalls.txt +++ b/idea/testData/psi/FunctionCalls.txt @@ -29,7 +29,7 @@ JetFile: FunctionCalls.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -45,7 +45,7 @@ JetFile: FunctionCalls.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(GT)('>') PsiWhiteSpace('\n ') @@ -133,7 +133,7 @@ JetFile: FunctionCalls.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -158,7 +158,7 @@ JetFile: FunctionCalls.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -189,12 +189,12 @@ JetFile: FunctionCalls.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -211,12 +211,12 @@ JetFile: FunctionCalls.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(GT)('>') VALUE_ARGUMENT_LIST diff --git a/idea/testData/psi/FunctionLiterals.txt b/idea/testData/psi/FunctionLiterals.txt index ca314806003..cded334ddf5 100644 --- a/idea/testData/psi/FunctionLiterals.txt +++ b/idea/testData/psi/FunctionLiterals.txt @@ -63,7 +63,7 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -84,14 +84,14 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(DOUBLE_ARROW)('=>') @@ -112,7 +112,7 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(DOUBLE_ARROW)('=>') @@ -151,7 +151,7 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -161,7 +161,7 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -182,7 +182,7 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -193,7 +193,7 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(DOUBLE_ARROW)('=>') @@ -217,14 +217,14 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(DOUBLE_ARROW)('=>') @@ -269,7 +269,7 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(DOUBLE_ARROW)('=>') @@ -288,7 +288,7 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(DOUBLE_ARROW)('=>') @@ -301,7 +301,7 @@ JetFile: FunctionLiterals.jet FUNCTION_LITERAL PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') VALUE_PARAMETER_LIST @@ -320,7 +320,7 @@ JetFile: FunctionLiterals.jet FUNCTION_LITERAL PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') VALUE_PARAMETER_LIST @@ -331,7 +331,7 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -345,7 +345,7 @@ JetFile: FunctionLiterals.jet FUNCTION_LITERAL PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') VALUE_PARAMETER_LIST @@ -356,14 +356,14 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(DOUBLE_ARROW)('=>') @@ -376,7 +376,7 @@ JetFile: FunctionLiterals.jet FUNCTION_LITERAL PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') VALUE_PARAMETER_LIST @@ -388,7 +388,7 @@ JetFile: FunctionLiterals.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(DOUBLE_ARROW)('=>') diff --git a/idea/testData/psi/FunctionLiterals_ERR.txt b/idea/testData/psi/FunctionLiterals_ERR.txt index d62c9621d7d..f9396b5a7ff 100644 --- a/idea/testData/psi/FunctionLiterals_ERR.txt +++ b/idea/testData/psi/FunctionLiterals_ERR.txt @@ -89,7 +89,7 @@ JetFile: FunctionLiterals_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -115,7 +115,7 @@ JetFile: FunctionLiterals_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(DOUBLE_ARROW)('=>') @@ -153,7 +153,7 @@ JetFile: FunctionLiterals_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -166,7 +166,7 @@ JetFile: FunctionLiterals_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -187,7 +187,7 @@ JetFile: FunctionLiterals_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -206,7 +206,7 @@ JetFile: FunctionLiterals_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(DOUBLE_ARROW)('=>') @@ -219,7 +219,7 @@ JetFile: FunctionLiterals_ERR.jet FUNCTION_LITERAL PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiErrorElement:Expecting '(' @@ -240,7 +240,7 @@ JetFile: FunctionLiterals_ERR.jet FUNCTION_LITERAL PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiErrorElement:Expecting '(' @@ -255,7 +255,7 @@ JetFile: FunctionLiterals_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -286,7 +286,7 @@ JetFile: FunctionLiterals_ERR.jet FUNCTION_LITERAL PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiErrorElement:To specify a receiver type, use the full notation: {ReceiverType.(parameters) [: ReturnType] => ...} diff --git a/idea/testData/psi/FunctionTypes.txt b/idea/testData/psi/FunctionTypes.txt index 422f6dd29f9..947542bab64 100644 --- a/idea/testData/psi/FunctionTypes.txt +++ b/idea/testData/psi/FunctionTypes.txt @@ -18,19 +18,20 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -49,14 +50,14 @@ JetFile: FunctionTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -82,11 +83,12 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -137,18 +139,19 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -172,14 +175,14 @@ JetFile: FunctionTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -202,7 +205,7 @@ JetFile: FunctionTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -253,16 +256,17 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -272,14 +276,14 @@ JetFile: FunctionTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -298,7 +302,7 @@ JetFile: FunctionTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -308,14 +312,14 @@ JetFile: FunctionTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -334,7 +338,7 @@ JetFile: FunctionTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -349,14 +353,14 @@ JetFile: FunctionTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiElement(RPAR)(')') @@ -364,7 +368,7 @@ JetFile: FunctionTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -383,7 +387,7 @@ JetFile: FunctionTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -398,14 +402,14 @@ JetFile: FunctionTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiElement(RPAR)(')') @@ -446,7 +450,7 @@ JetFile: FunctionTypes.jet PsiElement(lazy)('lazy') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -467,14 +471,14 @@ JetFile: FunctionTypes.jet PsiElement(ref)('ref') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiElement(RPAR)(')') @@ -510,7 +514,7 @@ JetFile: FunctionTypes.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') VALUE_PARAMETER_LIST @@ -538,8 +542,8 @@ JetFile: FunctionTypes.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('T') @@ -569,18 +573,18 @@ JetFile: FunctionTypes.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(GT)('>') PsiElement(DOT)('.') @@ -588,7 +592,7 @@ JetFile: FunctionTypes.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('x') PsiElement(GT)('>') PsiElement(DOT)('.') @@ -623,7 +627,7 @@ JetFile: FunctionTypes.jet TUPLE_TYPE PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('S') PsiElement(RPAR)(')') PsiElement(DOT)('.') @@ -667,7 +671,7 @@ JetFile: FunctionTypes.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') VALUE_PARAMETER_LIST @@ -710,8 +714,8 @@ JetFile: FunctionTypes.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('T') @@ -756,18 +760,18 @@ JetFile: FunctionTypes.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(GT)('>') PsiElement(DOT)('.') @@ -775,7 +779,7 @@ JetFile: FunctionTypes.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('x') PsiElement(GT)('>') PsiElement(DOT)('.') @@ -822,7 +826,7 @@ JetFile: FunctionTypes.jet TUPLE_TYPE PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('S') PsiElement(RPAR)(')') PsiElement(DOT)('.') @@ -863,14 +867,15 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') VALUE_PARAMETER_LIST @@ -898,15 +903,16 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('T') @@ -936,25 +942,26 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(GT)('>') PsiElement(DOT)('.') @@ -962,7 +969,7 @@ JetFile: FunctionTypes.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('x') PsiElement(GT)('>') PsiElement(DOT)('.') @@ -991,8 +998,9 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE @@ -1001,8 +1009,9 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE @@ -1011,7 +1020,7 @@ JetFile: FunctionTypes.jet TUPLE_TYPE PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('S') PsiElement(RPAR)(')') PsiElement(DOT)('.') @@ -1052,8 +1061,9 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE @@ -1062,14 +1072,15 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') VALUE_PARAMETER_LIST @@ -1109,8 +1120,9 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE @@ -1119,15 +1131,16 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('T') @@ -1169,8 +1182,9 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE @@ -1179,25 +1193,26 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(GT)('>') PsiElement(DOT)('.') @@ -1205,7 +1220,7 @@ JetFile: FunctionTypes.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('x') PsiElement(GT)('>') PsiElement(DOT)('.') @@ -1246,8 +1261,9 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE @@ -1256,8 +1272,9 @@ JetFile: FunctionTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE @@ -1266,7 +1283,7 @@ JetFile: FunctionTypes.jet TUPLE_TYPE PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('S') PsiElement(RPAR)(')') PsiElement(DOT)('.') diff --git a/idea/testData/psi/FunctionTypes_ERR.txt b/idea/testData/psi/FunctionTypes_ERR.txt index 57d02f12bce..a9c25fc4608 100644 --- a/idea/testData/psi/FunctionTypes_ERR.txt +++ b/idea/testData/psi/FunctionTypes_ERR.txt @@ -18,19 +18,20 @@ JetFile: FunctionTypes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiErrorElement:Expecting ':' followed by a return type PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -49,7 +50,7 @@ JetFile: FunctionTypes_ERR.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(COMMA)(',') PsiErrorElement:Expecting a parameter declaration @@ -60,6 +61,6 @@ JetFile: FunctionTypes_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/idea/testData/psi/Functions.txt b/idea/testData/psi/Functions.txt index 84ad04068f6..504fda22877 100644 --- a/idea/testData/psi/Functions.txt +++ b/idea/testData/psi/Functions.txt @@ -16,8 +16,9 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('foo') @@ -34,11 +35,12 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -58,28 +60,29 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(DOT)('.') VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -106,11 +109,12 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -124,14 +128,14 @@ JetFile: Functions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') FUN @@ -141,14 +145,15 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -165,14 +170,14 @@ JetFile: Functions.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiElement(GT)('>') @@ -184,14 +189,14 @@ JetFile: Functions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n\n') FUN @@ -211,8 +216,9 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('foo') @@ -230,11 +236,12 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -255,28 +262,29 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(DOT)('.') VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -304,11 +312,12 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -322,14 +331,14 @@ JetFile: Functions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiElement(SEMICOLON)(';') PsiWhiteSpace('\n') @@ -340,14 +349,15 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -364,14 +374,14 @@ JetFile: Functions.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiElement(GT)('>') @@ -383,14 +393,14 @@ JetFile: Functions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiElement(SEMICOLON)(';') PsiWhiteSpace('\n\n') @@ -414,8 +424,9 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('foo') @@ -436,11 +447,12 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -464,28 +476,29 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(DOT)('.') VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -516,11 +529,12 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -534,14 +548,14 @@ JetFile: Functions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') BLOCK @@ -555,14 +569,15 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -579,14 +594,14 @@ JetFile: Functions.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiElement(GT)('>') @@ -598,14 +613,14 @@ JetFile: Functions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') BLOCK @@ -619,8 +634,9 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE @@ -629,28 +645,29 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(DOT)('.') VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -681,14 +698,15 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -703,8 +721,9 @@ JetFile: Functions.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') FUNCTION_TYPE @@ -712,14 +731,14 @@ JetFile: Functions.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RBRACE)('}') PsiElement(GT)('>') @@ -731,14 +750,14 @@ JetFile: Functions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') BLOCK diff --git a/idea/testData/psi/Functions_ERR.txt b/idea/testData/psi/Functions_ERR.txt index 5875693b2ac..38db43471b7 100644 --- a/idea/testData/psi/Functions_ERR.txt +++ b/idea/testData/psi/Functions_ERR.txt @@ -17,8 +17,9 @@ JetFile: Functions_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('f') @@ -42,11 +43,12 @@ JetFile: Functions_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -67,7 +69,7 @@ JetFile: Functions_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') FUN @@ -77,14 +79,15 @@ JetFile: Functions_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -101,14 +104,14 @@ JetFile: Functions_ERR.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiErrorElement:Expecting '} @@ -121,14 +124,14 @@ JetFile: Functions_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') FUN @@ -138,14 +141,15 @@ JetFile: Functions_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -162,14 +166,14 @@ JetFile: Functions_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') FUN @@ -179,14 +183,15 @@ JetFile: Functions_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -210,14 +215,14 @@ JetFile: Functions_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') FUN @@ -227,14 +232,15 @@ JetFile: Functions_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -261,14 +267,14 @@ JetFile: Functions_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') FUN @@ -278,14 +284,15 @@ JetFile: Functions_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -309,7 +316,7 @@ JetFile: Functions_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -321,14 +328,14 @@ JetFile: Functions_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n\n') FUN @@ -362,28 +369,29 @@ JetFile: Functions_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(DOT)('.') VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(GT)('>') PsiElement(RPAR)(')') diff --git a/idea/testData/psi/LocalDeclarations.txt b/idea/testData/psi/LocalDeclarations.txt index 5e2be23fb39..720bc837dc5 100644 --- a/idea/testData/psi/LocalDeclarations.txt +++ b/idea/testData/psi/LocalDeclarations.txt @@ -24,8 +24,9 @@ JetFile: LocalDeclarations.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(abstract)('abstract') @@ -47,8 +48,9 @@ JetFile: LocalDeclarations.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(class)('class') @@ -79,8 +81,9 @@ JetFile: LocalDeclarations.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(var)('var') @@ -105,7 +108,7 @@ JetFile: LocalDeclarations.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') VALUE_PARAMETER_LIST @@ -133,7 +136,7 @@ JetFile: LocalDeclarations.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') CLASS_BODY diff --git a/idea/testData/psi/Match.jet b/idea/testData/psi/Match.jet deleted file mode 100644 index 8a3b14d3f0d..00000000000 --- a/idea/testData/psi/Match.jet +++ /dev/null @@ -1,41 +0,0 @@ -fun foo() { - return false - - fun a() = {a match { case a => b }} - - // foo - fun b() {} - -} - -fun foo() { - e match { - - } - e match { - case a => foo - } - e match { - case Tree(a, b) => foo - case Tree(a, b) if (a > 5) => foo - case null => foo - case 1 => foo - case A.b => foo - case 1l => foo - case 1.0 => foo - case 'c' => foo - case "sadfsa" => foo - case """ddd""" => foo - case ? => foo - case ? : Foo => foo - case ?a : Foo => foo - case (?a : Foo, b) => foo - } - e match { - - } match { - - } match { - - } -} \ No newline at end of file diff --git a/idea/testData/psi/Match.txt b/idea/testData/psi/Match.txt deleted file mode 100644 index 713fc17edce..00000000000 --- a/idea/testData/psi/Match.txt +++ /dev/null @@ -1,396 +0,0 @@ -JetFile: Match.jet - NAMESPACE - FUN - PsiElement(fun)('fun') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('foo') - TYPE_PARAMETER_LIST - - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - RETURN - PsiElement(return)('return') - PsiWhiteSpace(' ') - BOOLEAN_CONSTANT - PsiElement(false)('false') - PsiWhiteSpace('\n\n ') - FUN - PsiElement(fun)('fun') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('a') - TYPE_PARAMETER_LIST - - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - FUNCTION_LITERAL - PsiElement(LBRACE)('{') - BODY - MATCH_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace(' ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('b') - PsiWhiteSpace(' ') - PsiElement(RBRACE)('}') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n\n ') - PsiComment(EOL_COMMENT)('// foo') - PsiWhiteSpace('\n ') - FUN - PsiElement(fun)('fun') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('b') - TYPE_PARAMETER_LIST - - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - BLOCK - PsiElement(LBRACE)('{') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n\n') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n\n') - FUN - PsiElement(fun)('fun') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('foo') - TYPE_PARAMETER_LIST - - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('e') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - MATCH_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('e') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - MATCH_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('e') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('Tree') - TUPLE_PATTERN - PsiElement(LPAR)('(') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('a') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('b') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('Tree') - TUPLE_PATTERN - PsiElement(LPAR)('(') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('a') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('b') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(if)('if') - PsiWhiteSpace(' ') - PsiElement(LPAR)('(') - CONDITION - BINARY_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(GT)('>') - PsiWhiteSpace(' ') - INTEGER_CONSTANT - PsiElement(INTEGER_LITERAL)('5') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - NULL - PsiElement(null)('null') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - INTEGER_CONSTANT - PsiElement(INTEGER_LITERAL)('1') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - USER_TYPE - PsiElement(IDENTIFIER)('A') - PsiElement(DOT)('.') - PsiElement(IDENTIFIER)('b') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - LONG_CONSTANT - PsiElement(LONG_LITERAL)('1l') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - FLOAT_CONSTANT - PsiElement(FLOAT_CONSTANT)('1.0') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - CHARACTER_CONSTANT - PsiElement(CHARACTER_LITERAL)(''c'') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - STRING_CONSTANT - PsiElement(STRING_LITERAL)('"sadfsa"') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - STRING_CONSTANT - PsiElement(RAW_STRING_LITERAL)('"""ddd"""') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - PsiElement(QUEST)('?') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - PsiElement(QUEST)('?') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('Foo') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - PsiElement(QUEST)('?') - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('Foo') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - TUPLE_PATTERN - PsiElement(LPAR)('(') - PATTERN - PsiElement(QUEST)('?') - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('Foo') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('b') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - MATCH_EXPRESSION - MATCH_EXPRESSION - MATCH_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('e') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n') - PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/idea/testData/psi/Match_ERR.jet b/idea/testData/psi/Match_ERR.jet deleted file mode 100644 index 23383a14649..00000000000 --- a/idea/testData/psi/Match_ERR.jet +++ /dev/null @@ -1,24 +0,0 @@ -fun foo() { - e match { - - } - e match { - case => foo - } - e match { - case => ; - } - e match { - foo bar - case a => foo - } - e match { - foo bar - } - e match { - case - => foo - case (, , 1, , ) => foo - } match { - - } -} \ No newline at end of file diff --git a/idea/testData/psi/Match_ERR.txt b/idea/testData/psi/Match_ERR.txt deleted file mode 100644 index ced7214535b..00000000000 --- a/idea/testData/psi/Match_ERR.txt +++ /dev/null @@ -1,177 +0,0 @@ -JetFile: Match_ERR.jet - NAMESPACE - FUN - PsiElement(fun)('fun') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('foo') - TYPE_PARAMETER_LIST - - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('e') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - MATCH_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('e') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - PsiErrorElement:Pattern expected - - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - MATCH_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('e') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - PsiErrorElement:Pattern expected - - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - PsiErrorElement:Expecting an expression - PsiElement(SEMICOLON)(';') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - MATCH_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('e') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - PsiErrorElement:Expecting 'case' to start pattern matching - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('bar') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - MATCH_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('e') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - PsiErrorElement:Expecting 'case' to start pattern matching - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('bar') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - MATCH_EXPRESSION - MATCH_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('e') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - PsiErrorElement:Pattern expected - PsiElement(MINUS)('-') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - TUPLE_PATTERN - PsiElement(LPAR)('(') - PsiErrorElement:Expecting a pattern - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - PsiErrorElement:Expecting a pattern - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - PATTERN - INTEGER_CONSTANT - PsiElement(INTEGER_LITERAL)('1') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - PsiErrorElement:Expecting a pattern - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - PATTERN - PsiErrorElement:Pattern expected - PsiElement(RPAR)(')') - PsiErrorElement:Expecting ')' - - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('foo') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n') - PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/idea/testData/psi/NamespaceModifiers.txt b/idea/testData/psi/NamespaceModifiers.txt index 23cbae7711d..69715333ccc 100644 --- a/idea/testData/psi/NamespaceModifiers.txt +++ b/idea/testData/psi/NamespaceModifiers.txt @@ -6,8 +6,9 @@ JetFile: NamespaceModifiers.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(namespace)('namespace') @@ -21,8 +22,9 @@ JetFile: NamespaceModifiers.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(namespace)('namespace') diff --git a/idea/testData/psi/Precedence.txt b/idea/testData/psi/Precedence.txt index 9d0b6f0afdd..ef51848ee3a 100644 --- a/idea/testData/psi/Precedence.txt +++ b/idea/testData/psi/Precedence.txt @@ -59,17 +59,17 @@ JetFile: Precedence.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -192,12 +192,12 @@ JetFile: Precedence.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -526,7 +526,7 @@ JetFile: Precedence.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -539,7 +539,7 @@ JetFile: Precedence.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('c') PsiWhiteSpace('\n ') BINARY_EXPRESSION @@ -622,84 +622,5 @@ JetFile: Precedence.jet PsiWhiteSpace(' ') REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('c') - PsiWhiteSpace('\n ') - BINARY_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - MATCH_EXPRESSION - MATCH_EXPRESSION - BINARY_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('b') - PsiWhiteSpace(' ') - PsiElement(OROR)('||') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('c') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiElement(RBRACE)('}') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - BINARY_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - MATCH_EXPRESSION - BINARY_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('b') - PsiWhiteSpace(' ') - PsiElement(OROR)('||') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('c') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - BINARY_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - BINARY_EXPRESSION - BINARY_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('a') - PsiWhiteSpace(' ') - PsiElement(ARROW)('->') - PsiWhiteSpace(' ') - MATCH_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('c') - PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiElement(RBRACE)('}') - PsiWhiteSpace(' ') - PsiElement(ARROW)('->') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('c') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/idea/testData/psi/Properties.txt b/idea/testData/psi/Properties.txt index 4f06bfb51e8..cd7f858c709 100644 --- a/idea/testData/psi/Properties.txt +++ b/idea/testData/psi/Properties.txt @@ -29,8 +29,9 @@ JetFile: Properties.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('foo') @@ -39,7 +40,7 @@ JetFile: Properties.jet PsiElement(val)('val') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -71,8 +72,8 @@ JetFile: Properties.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -99,7 +100,7 @@ JetFile: Properties.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace('\n') PROPERTY @@ -108,8 +109,9 @@ JetFile: Properties.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('foo') @@ -123,7 +125,7 @@ JetFile: Properties.jet PsiElement(val)('val') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -156,8 +158,8 @@ JetFile: Properties.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -208,8 +210,8 @@ JetFile: Properties.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -241,7 +243,7 @@ JetFile: Properties.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') PsiWhiteSpace(' ') BLOCK @@ -266,8 +268,8 @@ JetFile: Properties.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -289,7 +291,7 @@ JetFile: Properties.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -302,8 +304,9 @@ JetFile: Properties.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(public)('public') @@ -328,7 +331,7 @@ JetFile: Properties.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -343,8 +346,8 @@ JetFile: Properties.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -366,7 +369,7 @@ JetFile: Properties.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -386,7 +389,7 @@ JetFile: Properties.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -401,8 +404,8 @@ JetFile: Properties.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -424,7 +427,7 @@ JetFile: Properties.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -437,8 +440,9 @@ JetFile: Properties.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(public)('public') @@ -485,7 +489,7 @@ JetFile: Properties.jet PsiElement(val)('val') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -506,7 +510,7 @@ JetFile: Properties.jet PsiElement(val)('val') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -579,7 +583,7 @@ JetFile: Properties.jet PsiElement(val)('val') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -605,7 +609,7 @@ JetFile: Properties.jet PsiElement(val)('val') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -680,7 +684,7 @@ JetFile: Properties.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('x') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -695,12 +699,12 @@ JetFile: Properties.jet PsiElement(val)('val') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IList') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(DOT)('.') @@ -709,7 +713,7 @@ JetFile: Properties.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR diff --git a/idea/testData/psi/Properties_ERR.txt b/idea/testData/psi/Properties_ERR.txt index dacf8bd65ff..04d75fcc589 100644 --- a/idea/testData/psi/Properties_ERR.txt +++ b/idea/testData/psi/Properties_ERR.txt @@ -47,8 +47,9 @@ JetFile: Properties_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiErrorElement:Expecting ']' to close an attribute annotation PsiWhiteSpace(' ') @@ -63,7 +64,7 @@ JetFile: Properties_ERR.jet PsiElement(val)('val') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -76,8 +77,9 @@ JetFile: Properties_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('foo') @@ -96,7 +98,7 @@ JetFile: Properties_ERR.jet PsiElement(val)('val') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -132,8 +134,8 @@ JetFile: Properties_ERR.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -186,8 +188,8 @@ JetFile: Properties_ERR.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('bar') @@ -250,7 +252,7 @@ JetFile: Properties_ERR.jet PsiElement(val)('val') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('f') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('d') diff --git a/idea/testData/psi/QuotedIdentifiers.txt b/idea/testData/psi/QuotedIdentifiers.txt index 624104aa4cf..53c7c6b4af6 100644 --- a/idea/testData/psi/QuotedIdentifiers.txt +++ b/idea/testData/psi/QuotedIdentifiers.txt @@ -5,8 +5,9 @@ JetFile: QuotedIdentifiers.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('`return`') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('`return`') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') diff --git a/idea/testData/psi/RootNamespace.jet b/idea/testData/psi/RootNamespace.jet index a69aa910531..d70eb52b293 100644 --- a/idea/testData/psi/RootNamespace.jet +++ b/idea/testData/psi/RootNamespace.jet @@ -6,8 +6,8 @@ namespace foo.bar { fun foo() { namespace.foo.bar.X new namespace.foo.bar.X() - e match { - case namespace.foo.bar.X(x) => {} + when (e) { + is namespace.foo.bar.X(x) => {} } } } \ No newline at end of file diff --git a/idea/testData/psi/RootNamespace.txt b/idea/testData/psi/RootNamespace.txt index 223740d0d04..945cbcaccef 100644 --- a/idea/testData/psi/RootNamespace.txt +++ b/idea/testData/psi/RootNamespace.txt @@ -58,9 +58,9 @@ JetFile: RootNamespace.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(namespace)('namespace') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -72,22 +72,24 @@ JetFile: RootNamespace.jet PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiWhiteSpace('\n ') - MATCH_EXPRESSION + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('e') + PsiElement(RPAR)(')') PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') PsiWhiteSpace(' ') - PATTERN - USER_TYPE - USER_TYPE - USER_TYPE + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(namespace)('namespace') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('foo') @@ -95,22 +97,23 @@ JetFile: RootNamespace.jet PsiElement(IDENTIFIER)('bar') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('X') - TUPLE_PATTERN + DECOMPOSER_ARGUMENT_LIST PsiElement(LPAR)('(') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('x') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - FUNCTION_LITERAL - PsiElement(LBRACE)('{') - BODY - - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + FUNCTION_LITERAL + PsiElement(LBRACE)('{') + BODY + + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') PsiWhiteSpace('\n ') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') diff --git a/idea/testData/psi/SimpleClassMembers.txt b/idea/testData/psi/SimpleClassMembers.txt index afebff063e5..03da720ac06 100644 --- a/idea/testData/psi/SimpleClassMembers.txt +++ b/idea/testData/psi/SimpleClassMembers.txt @@ -20,7 +20,7 @@ JetFile: SimpleClassMembers.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiWhiteSpace(' ') CLASS_BODY @@ -36,7 +36,7 @@ JetFile: SimpleClassMembers.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiWhiteSpace(' ') CLASS_BODY @@ -85,7 +85,7 @@ JetFile: SimpleClassMembers.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n\n ') CONSTRUCTOR @@ -119,12 +119,12 @@ JetFile: SimpleClassMembers.jet PsiWhiteSpace(' ') DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -156,7 +156,7 @@ JetFile: SimpleClassMembers.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiWhiteSpace(' ') CLASS_BODY @@ -199,7 +199,7 @@ JetFile: SimpleClassMembers.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Fooo') PsiWhiteSpace(' ') CLASS_BODY @@ -219,13 +219,13 @@ JetFile: SimpleClassMembers.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Fooo') PsiElement(COMMA)(',') PsiWhiteSpace(' ') DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Bar') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -250,13 +250,13 @@ JetFile: SimpleClassMembers.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Fooo') PsiElement(COMMA)(',') PsiWhiteSpace(' ') DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Bar') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -267,7 +267,7 @@ JetFile: SimpleClassMembers.jet PsiWhiteSpace(' ') DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Goo') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -316,7 +316,7 @@ JetFile: SimpleClassMembers.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n\n ') CONSTRUCTOR @@ -350,12 +350,12 @@ JetFile: SimpleClassMembers.jet PsiWhiteSpace(' ') DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -397,7 +397,7 @@ JetFile: SimpleClassMembers.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n\n ') CONSTRUCTOR @@ -431,12 +431,12 @@ JetFile: SimpleClassMembers.jet PsiWhiteSpace(' ') DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -477,12 +477,12 @@ JetFile: SimpleClassMembers.jet PsiWhiteSpace(' ') DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -534,7 +534,7 @@ JetFile: SimpleClassMembers.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Fooo') PsiWhiteSpace(' ') CLASS_BODY @@ -554,13 +554,13 @@ JetFile: SimpleClassMembers.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Fooo') PsiElement(COMMA)(',') PsiWhiteSpace(' ') DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Bar') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -585,13 +585,13 @@ JetFile: SimpleClassMembers.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Fooo') PsiElement(COMMA)(',') PsiWhiteSpace(' ') DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Bar') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -602,7 +602,7 @@ JetFile: SimpleClassMembers.jet PsiWhiteSpace(' ') DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Goo') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') diff --git a/idea/testData/psi/SimpleClassMembers_ERR.txt b/idea/testData/psi/SimpleClassMembers_ERR.txt index 792fe089ac8..1ea83c5fdcb 100644 --- a/idea/testData/psi/SimpleClassMembers_ERR.txt +++ b/idea/testData/psi/SimpleClassMembers_ERR.txt @@ -20,7 +20,7 @@ JetFile: SimpleClassMembers_ERR.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiWhiteSpace(' ') CLASS_BODY @@ -111,12 +111,12 @@ JetFile: SimpleClassMembers_ERR.jet PsiWhiteSpace(' ') DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiErrorElement:Expecting a '>' @@ -158,12 +158,12 @@ JetFile: SimpleClassMembers_ERR.jet PsiWhiteSpace(' ') DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') VALUE_ARGUMENT_LIST diff --git a/idea/testData/psi/SimpleExpressions.txt b/idea/testData/psi/SimpleExpressions.txt index 809ddd01075..bb0b5b1a596 100644 --- a/idea/testData/psi/SimpleExpressions.txt +++ b/idea/testData/psi/SimpleExpressions.txt @@ -15,7 +15,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -31,7 +31,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -46,7 +46,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -61,7 +61,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -76,7 +76,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -91,7 +91,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -106,7 +106,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -121,7 +121,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -136,7 +136,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -151,7 +151,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -166,7 +166,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -181,7 +181,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -196,7 +196,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -211,7 +211,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -226,7 +226,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -241,7 +241,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -250,7 +250,7 @@ JetFile: SimpleExpressions.jet PsiElement(this)('this') PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('sdf') PsiElement(GT)('>') PsiElement(COMMA)(',') @@ -261,7 +261,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -279,7 +279,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -305,7 +305,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -324,7 +324,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -333,7 +333,7 @@ JetFile: SimpleExpressions.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -349,7 +349,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -358,12 +358,12 @@ JetFile: SimpleExpressions.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -380,7 +380,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -389,7 +389,7 @@ JetFile: SimpleExpressions.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -399,7 +399,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -408,12 +408,12 @@ JetFile: SimpleExpressions.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiElement(GT)('>') PsiElement(COMMA)(',') @@ -424,7 +424,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -435,7 +435,7 @@ JetFile: SimpleExpressions.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') CLASS_BODY PsiElement(LBRACE)('{') @@ -448,7 +448,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -460,7 +460,7 @@ JetFile: SimpleExpressions.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -470,7 +470,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -488,7 +488,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -503,7 +503,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -520,7 +520,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -535,7 +535,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -552,7 +552,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -567,7 +567,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -582,7 +582,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -597,7 +597,7 @@ JetFile: SimpleExpressions.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(EQ)('=') diff --git a/idea/testData/psi/SoftKeywords.txt b/idea/testData/psi/SoftKeywords.txt index cec9e26b7ce..ddfea74d73f 100644 --- a/idea/testData/psi/SoftKeywords.txt +++ b/idea/testData/psi/SoftKeywords.txt @@ -74,7 +74,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -135,7 +135,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -144,7 +144,7 @@ JetFile: SoftKeywords.jet DELEGATION_SPECIFIER_LIST DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiWhiteSpace(' ') PsiElement(by)('by') @@ -298,7 +298,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('s') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -329,7 +329,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('abstract') PsiWhiteSpace('\n ') FUN @@ -346,7 +346,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('virtual') PsiWhiteSpace('\n ') FUN @@ -363,7 +363,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('enum') PsiWhiteSpace('\n ') FUN @@ -380,7 +380,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('open') PsiWhiteSpace('\n ') FUN @@ -397,7 +397,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('attribute') PsiWhiteSpace('\n ') FUN @@ -414,7 +414,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('override') PsiWhiteSpace('\n ') FUN @@ -431,7 +431,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('virtual') PsiWhiteSpace('\n ') FUN @@ -448,7 +448,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('abstract') PsiWhiteSpace('\n ') FUN @@ -465,7 +465,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('private') PsiWhiteSpace('\n ') FUN @@ -482,7 +482,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('protected') PsiWhiteSpace('\n ') FUN @@ -499,7 +499,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('public') PsiWhiteSpace('\n ') FUN @@ -516,7 +516,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('internal') PsiWhiteSpace('\n ') FUN @@ -533,7 +533,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('lazy') PsiWhiteSpace('\n ') FUN @@ -550,7 +550,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('wraps') PsiWhiteSpace('\n ') FUN @@ -567,7 +567,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('import') PsiWhiteSpace('\n ') FUN @@ -584,7 +584,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('where') PsiWhiteSpace('\n ') FUN @@ -601,7 +601,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('by') PsiWhiteSpace('\n ') FUN @@ -618,7 +618,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('get') PsiWhiteSpace('\n ') FUN @@ -635,7 +635,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('set') PsiWhiteSpace('\n ') FUN @@ -652,7 +652,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('public') PsiWhiteSpace('\n ') FUN @@ -669,7 +669,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('private') PsiWhiteSpace('\n ') FUN @@ -686,7 +686,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('protected') PsiWhiteSpace('\n ') FUN @@ -703,7 +703,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('internal') PsiWhiteSpace('\n\n ') FUN @@ -721,7 +721,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -731,7 +731,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -741,7 +741,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -751,7 +751,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -761,7 +761,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -771,7 +771,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -781,7 +781,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -791,7 +791,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -801,7 +801,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -811,7 +811,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -821,7 +821,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -831,7 +831,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -841,7 +841,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -851,7 +851,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -861,7 +861,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -871,7 +871,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -881,7 +881,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -891,7 +891,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -901,7 +901,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -911,7 +911,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -921,7 +921,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -931,7 +931,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -941,7 +941,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -986,7 +986,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiWhiteSpace('\n\n ') PsiElement(RPAR)(')') @@ -1009,7 +1009,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1019,7 +1019,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1029,7 +1029,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1039,7 +1039,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1049,7 +1049,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1059,7 +1059,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1069,7 +1069,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1079,7 +1079,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1089,7 +1089,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1099,7 +1099,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1109,7 +1109,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1119,7 +1119,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1129,7 +1129,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1139,7 +1139,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1149,7 +1149,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1159,7 +1159,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1169,7 +1169,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1179,7 +1179,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1189,7 +1189,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1199,7 +1199,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1209,7 +1209,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1219,7 +1219,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1229,7 +1229,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1239,7 +1239,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('t') PsiElement(COMMA)(',') PsiWhiteSpace('\n ') @@ -1284,7 +1284,7 @@ JetFile: SoftKeywords.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiWhiteSpace('\n') PsiElement(RPAR)(')') diff --git a/idea/testData/psi/ThisType.txt b/idea/testData/psi/ThisType.txt index 7e9a4a251fe..ab84c76f1a2 100644 --- a/idea/testData/psi/ThisType.txt +++ b/idea/testData/psi/ThisType.txt @@ -12,7 +12,7 @@ JetFile: ThisType.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('List') TYPE_ARGUMENT_LIST PsiElement(LT)('<') @@ -39,7 +39,7 @@ JetFile: ThisType.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') TYPE_ARGUMENT_LIST PsiElement(LT)('<') @@ -54,7 +54,7 @@ JetFile: ThisType.jet DELEGATION_SPECIFIER_LIST DELEGATOR_BY TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('List') TYPE_ARGUMENT_LIST PsiElement(LT)('<') @@ -72,7 +72,7 @@ JetFile: ThisType.jet PsiElement(as)('as') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('List') TYPE_ARGUMENT_LIST PsiElement(LT)('<') @@ -128,7 +128,7 @@ JetFile: ThisType.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') TYPE_ARGUMENT_LIST PsiElement(LT)('<') diff --git a/idea/testData/psi/TupleTypes.txt b/idea/testData/psi/TupleTypes.txt index 0cf3fe66e5e..06dfc0df69c 100644 --- a/idea/testData/psi/TupleTypes.txt +++ b/idea/testData/psi/TupleTypes.txt @@ -29,7 +29,7 @@ JetFile: TupleTypes.jet TUPLE_TYPE PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiElement(RPAR)(')') PsiElement(COMMA)(',') @@ -43,12 +43,12 @@ JetFile: TupleTypes.jet TUPLE_TYPE PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(RPAR)(')') PsiElement(COMMA)(',') @@ -67,7 +67,7 @@ JetFile: TupleTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -77,7 +77,7 @@ JetFile: TupleTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiElement(COMMA)(',') @@ -91,8 +91,9 @@ JetFile: TupleTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') TUPLE_TYPE @@ -109,8 +110,9 @@ JetFile: TupleTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') TUPLE_TYPE PsiElement(LPAR)('(') @@ -118,11 +120,12 @@ JetFile: TupleTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiElement(RPAR)(')') PsiElement(COMMA)(',') @@ -136,8 +139,9 @@ JetFile: TupleTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') TUPLE_TYPE @@ -146,11 +150,12 @@ JetFile: TupleTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -158,10 +163,11 @@ JetFile: TupleTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(RPAR)(')') PsiElement(COMMA)(',') @@ -175,8 +181,9 @@ JetFile: TupleTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') TUPLE_TYPE @@ -190,11 +197,12 @@ JetFile: TupleTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -207,11 +215,12 @@ JetFile: TupleTypes.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace('\n ') diff --git a/idea/testData/psi/TupleTypes_ERR.txt b/idea/testData/psi/TupleTypes_ERR.txt index d449c821dd1..b12d633b8f0 100644 --- a/idea/testData/psi/TupleTypes_ERR.txt +++ b/idea/testData/psi/TupleTypes_ERR.txt @@ -29,7 +29,7 @@ JetFile: TupleTypes_ERR.jet TUPLE_TYPE PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiElement(RPAR)(')') PsiElement(COMMA)(',') @@ -43,7 +43,7 @@ JetFile: TupleTypes_ERR.jet TUPLE_TYPE PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiErrorElement:Type expected @@ -74,7 +74,7 @@ JetFile: TupleTypes_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiElement(COMMA)(',') @@ -88,8 +88,9 @@ JetFile: TupleTypes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') TUPLE_TYPE @@ -106,8 +107,9 @@ JetFile: TupleTypes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') TUPLE_TYPE PsiElement(LPAR)('(') @@ -115,12 +117,13 @@ JetFile: TupleTypes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiErrorElement:Expecting ']' to close an attribute annotation PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiElement(RPAR)(')') PsiElement(COMMA)(',') @@ -134,8 +137,9 @@ JetFile: TupleTypes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') TUPLE_TYPE @@ -144,11 +148,12 @@ JetFile: TupleTypes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -156,10 +161,11 @@ JetFile: TupleTypes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(RPAR)(')') PsiElement(COMMA)(',') @@ -173,8 +179,9 @@ JetFile: TupleTypes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') TUPLE_TYPE @@ -188,11 +195,12 @@ JetFile: TupleTypes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -205,11 +213,12 @@ JetFile: TupleTypes_ERR.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace('\n ') diff --git a/idea/testData/psi/TypeAnnotations.txt b/idea/testData/psi/TypeAnnotations.txt index e3b84cd86ab..f7f091f892f 100644 --- a/idea/testData/psi/TypeAnnotations.txt +++ b/idea/testData/psi/TypeAnnotations.txt @@ -17,18 +17,20 @@ JetFile: TypeAnnotations.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('a') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('b') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(RPAR)(')') PsiWhiteSpace('\n\n') @@ -45,18 +47,20 @@ JetFile: TypeAnnotations.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('b') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('F') TYPE_ARGUMENT_LIST PsiElement(LT)('<') @@ -64,16 +68,17 @@ JetFile: TypeAnnotations.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('x') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiElement(GT)('>') \ No newline at end of file diff --git a/idea/testData/psi/TypeConstraints.txt b/idea/testData/psi/TypeConstraints.txt index 697ba476ac8..7e3e6953863 100644 --- a/idea/testData/psi/TypeConstraints.txt +++ b/idea/testData/psi/TypeConstraints.txt @@ -15,13 +15,13 @@ JetFile: TypeConstraints.jet TYPE_CONSTRAINT_LIST TYPE_CONSTRAINT TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -31,13 +31,13 @@ JetFile: TypeConstraints.jet PsiElement(object)('object') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') CLASS_BODY diff --git a/idea/testData/psi/TypeDef.txt b/idea/testData/psi/TypeDef.txt index fbe731f75e4..c1dcd6036f1 100644 --- a/idea/testData/psi/TypeDef.txt +++ b/idea/testData/psi/TypeDef.txt @@ -19,7 +19,7 @@ JetFile: TypeDef.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') TYPEDEF @@ -35,7 +35,7 @@ JetFile: TypeDef.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') TYPEDEF @@ -50,14 +50,14 @@ JetFile: TypeDef.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(GT)('>') PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') TYPEDEF @@ -77,7 +77,7 @@ JetFile: TypeDef.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') TYPEDEF @@ -96,14 +96,14 @@ JetFile: TypeDef.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(GT)('>') PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n\n') TYPEDEF @@ -116,7 +116,7 @@ JetFile: TypeDef.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') PsiElement(SEMICOLON)(';') @@ -134,7 +134,7 @@ JetFile: TypeDef.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') PsiElement(SEMICOLON)(';') @@ -151,14 +151,14 @@ JetFile: TypeDef.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiElement(GT)('>') PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') PsiElement(SEMICOLON)(';') @@ -180,7 +180,7 @@ JetFile: TypeDef.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') PsiElement(SEMICOLON)(';') @@ -201,14 +201,14 @@ JetFile: TypeDef.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('A') PsiElement(GT)('>') PsiWhiteSpace(' ') PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace(' ') PsiElement(SEMICOLON)(';') \ No newline at end of file diff --git a/idea/testData/psi/TypeDef_ERR.txt b/idea/testData/psi/TypeDef_ERR.txt index e5ecb3cf0b7..161d6e1344a 100644 --- a/idea/testData/psi/TypeDef_ERR.txt +++ b/idea/testData/psi/TypeDef_ERR.txt @@ -84,7 +84,7 @@ JetFile: TypeDef_ERR.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace('\n') TYPEDEF @@ -109,7 +109,7 @@ JetFile: TypeDef_ERR.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('foo') PsiWhiteSpace(' ') PsiElement(SEMICOLON)(';') @@ -141,7 +141,7 @@ JetFile: TypeDef_ERR.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') TYPEDEF @@ -161,7 +161,7 @@ JetFile: TypeDef_ERR.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n') TYPEDEF @@ -187,7 +187,7 @@ JetFile: TypeDef_ERR.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiWhiteSpace('\n\n') CLASS @@ -207,5 +207,5 @@ JetFile: TypeDef_ERR.jet PsiElement(EQ)('=') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') \ No newline at end of file diff --git a/idea/testData/psi/TypeExpressionAmbiguities_ERR.txt b/idea/testData/psi/TypeExpressionAmbiguities_ERR.txt index 672422288b0..d6941686c4e 100644 --- a/idea/testData/psi/TypeExpressionAmbiguities_ERR.txt +++ b/idea/testData/psi/TypeExpressionAmbiguities_ERR.txt @@ -25,17 +25,17 @@ JetFile: TypeExpressionAmbiguities_ERR.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('a') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('c') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -138,7 +138,7 @@ JetFile: TypeExpressionAmbiguities_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -161,14 +161,14 @@ JetFile: TypeExpressionAmbiguities_ERR.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('b') PsiWhiteSpace(' ') TYPE_ARGUMENT_LIST PsiElement(LT)('<') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('c') PsiErrorElement:Expecting a '>' @@ -180,33 +180,33 @@ JetFile: TypeExpressionAmbiguities_ERR.jet PsiElement(as)('as') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') PsiWhiteSpace(' ') TYPE_ARGUMENT_LIST PsiElement(LT)('<') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiErrorElement:Expecting a '>' PsiWhiteSpace('\n ') - BINARY_WITH_TYPE + BINARY_WITH_PATTERN REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('x') PsiWhiteSpace(' ') PsiElement(is)('is') PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE + TYPE_PATTERN + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Foo') PsiWhiteSpace(' ') TYPE_ARGUMENT_LIST PsiElement(LT)('<') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('bar') PsiErrorElement:Expecting a '>' diff --git a/idea/testData/psi/When.jet b/idea/testData/psi/When.jet new file mode 100644 index 00000000000..41b211626bf --- /dev/null +++ b/idea/testData/psi/When.jet @@ -0,0 +1,76 @@ +fun foo() { + return false + + fun a() = {when(x) { is a => b }} + + // foo + fun b() {} + +} + +fun foo() { + when (e) { + + } + when (e) { + is a => foo + } + when (e) { + is Tree(a, b) => foo + is Tree(a, b) if (a > 5) => foo + is null => foo + is 1 => foo + is A.b => foo + is 1l => foo + is 1.0 => foo + is 'c' => foo + is "sadfsa" => foo + is """ddd""" => foo + is ? => foo + is ? is Foo => foo + is ?a is Foo => foo + is (?a is Foo, b) => foo + } + when (when(when (e) { + + }) { + + }) { + + } +} + +fun foo() { + when (val a = e) { + is Tree => c + is Tree(null, ?r) => c + is a(a, b) => c + is a(a, b) => c + is a.a(a, b) => c + is a.a(foo = a, bar = b) => c + is namespace.a.a(a, b) => c + is a(?a is T, b) => c + is a(b, 1) => c + in 1..2 => dsf + !in 2 => sd + !is t => d + is {(foo) : Bar} => fgpp + is (1, ?a is Foo, ?, ? is Foo, bar) => d + is (Foo, ?a in 1..2, ?, ? !is Foo, ?bar = foo.bar(a)) => d + is (Int, Int) => 2 + else => foo + else continue + } +} + +fun foo() { + when (val a = e) { + is Tree, + is Tree(null, ?r), + is a(a, b) => c + 1, foo(), bar, 2 + 3, + is a(a, b) => c + is a.a(=a + 3, b) => c + } +} + diff --git a/idea/testData/psi/When.txt b/idea/testData/psi/When.txt new file mode 100644 index 00000000000..f69eedae816 --- /dev/null +++ b/idea/testData/psi/When.txt @@ -0,0 +1,1111 @@ +JetFile: When.jet + NAMESPACE + FUN + PsiElement(fun)('fun') + PsiWhiteSpace(' ') + PsiElement(IDENTIFIER)('foo') + TYPE_PARAMETER_LIST + + VALUE_PARAMETER_LIST + PsiElement(LPAR)('(') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + BLOCK + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + RETURN + PsiElement(return)('return') + PsiWhiteSpace(' ') + BOOLEAN_CONSTANT + PsiElement(false)('false') + PsiWhiteSpace('\n\n ') + FUN + PsiElement(fun)('fun') + PsiWhiteSpace(' ') + PsiElement(IDENTIFIER)('a') + TYPE_PARAMETER_LIST + + VALUE_PARAMETER_LIST + PsiElement(LPAR)('(') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(EQ)('=') + PsiWhiteSpace(' ') + FUNCTION_LITERAL + PsiElement(LBRACE)('{') + BODY + WHEN + PsiElement(when)('when') + PsiElement(LPAR)('(') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('x') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace(' ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiWhiteSpace(' ') + PsiElement(RBRACE)('}') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n\n ') + PsiComment(EOL_COMMENT)('// foo') + PsiWhiteSpace('\n ') + FUN + PsiElement(fun)('fun') + PsiWhiteSpace(' ') + PsiElement(IDENTIFIER)('b') + TYPE_PARAMETER_LIST + + VALUE_PARAMETER_LIST + PsiElement(LPAR)('(') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + BLOCK + PsiElement(LBRACE)('{') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n\n') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n\n') + FUN + PsiElement(fun)('fun') + PsiWhiteSpace(' ') + PsiElement(IDENTIFIER)('foo') + TYPE_PARAMETER_LIST + + VALUE_PARAMETER_LIST + PsiElement(LPAR)('(') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + BLOCK + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('e') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n ') + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('e') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n ') + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('e') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Tree') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Tree') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(if)('if') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + BINARY_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiWhiteSpace(' ') + PsiElement(GT)('>') + PsiWhiteSpace(' ') + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('5') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + EXPRESSION_PATTERN + NULL + PsiElement(null)('null') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + EXPRESSION_PATTERN + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('1') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('A') + PsiElement(DOT)('.') + PsiElement(IDENTIFIER)('b') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + EXPRESSION_PATTERN + LONG_CONSTANT + PsiElement(LONG_LITERAL)('1l') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + EXPRESSION_PATTERN + FLOAT_CONSTANT + PsiElement(FLOAT_CONSTANT)('1.0') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + EXPRESSION_PATTERN + CHARACTER_CONSTANT + PsiElement(CHARACTER_LITERAL)(''c'') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + EXPRESSION_PATTERN + STRING_CONSTANT + PsiElement(STRING_LITERAL)('"sadfsa"') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + EXPRESSION_PATTERN + STRING_CONSTANT + PsiElement(RAW_STRING_LITERAL)('"""ddd"""') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiWhiteSpace(' ') + PsiElement(is)('is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Foo') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiElement(IDENTIFIER)('a') + PsiWhiteSpace(' ') + PsiElement(is)('is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Foo') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + TUPLE_PATTERN + PsiElement(LPAR)('(') + TUPLE_PATTERN_ENTRY + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiElement(IDENTIFIER)('a') + PsiWhiteSpace(' ') + PsiElement(is)('is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Foo') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TUPLE_PATTERN_ENTRY + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n ') + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + WHEN + PsiElement(when)('when') + PsiElement(LPAR)('(') + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('e') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n\n ') + PsiElement(RBRACE)('}') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n\n ') + PsiElement(RBRACE)('}') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n\n') + FUN + PsiElement(fun)('fun') + PsiWhiteSpace(' ') + PsiElement(IDENTIFIER)('foo') + TYPE_PARAMETER_LIST + + VALUE_PARAMETER_LIST + PsiElement(LPAR)('(') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + BLOCK + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + PsiElement(val)('val') + PsiWhiteSpace(' ') + PsiElement(IDENTIFIER)('a') + PsiWhiteSpace(' ') + PsiElement(EQ)('=') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('e') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Tree') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('c') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Tree') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + EXPRESSION_PATTERN + NULL + PsiElement(null)('null') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiElement(IDENTIFIER)('r') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('c') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('c') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('c') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(DOT)('.') + PsiElement(IDENTIFIER)('a') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('c') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(DOT)('.') + PsiElement(IDENTIFIER)('a') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace(' ') + PsiElement(EQ)('=') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + PsiElement(IDENTIFIER)('bar') + PsiWhiteSpace(' ') + PsiElement(EQ)('=') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('c') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(namespace)('namespace') + PsiElement(DOT)('.') + PsiElement(IDENTIFIER)('a') + PsiElement(DOT)('.') + PsiElement(IDENTIFIER)('a') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('c') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiElement(IDENTIFIER)('a') + PsiWhiteSpace(' ') + PsiElement(is)('is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('T') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('c') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + EXPRESSION_PATTERN + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('1') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('c') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(in)('in') + PsiWhiteSpace(' ') + BINARY_EXPRESSION + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('1') + PsiElement(RANGE)('..') + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('2') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('dsf') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(NOT_IN)('!in') + PsiWhiteSpace(' ') + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('2') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('sd') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(NOT_IS)('!is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('t') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('d') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + TYPE_PATTERN + TYPE_REFERENCE + FUNCTION_TYPE + PsiElement(LBRACE)('{') + VALUE_PARAMETER_LIST + PsiElement(LPAR)('(') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(COLON)(':') + PsiWhiteSpace(' ') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Bar') + PsiElement(RBRACE)('}') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('fgpp') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + TUPLE_PATTERN + PsiElement(LPAR)('(') + TUPLE_PATTERN_ENTRY + EXPRESSION_PATTERN + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('1') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TUPLE_PATTERN_ENTRY + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiElement(IDENTIFIER)('a') + PsiWhiteSpace(' ') + PsiElement(is)('is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Foo') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TUPLE_PATTERN_ENTRY + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TUPLE_PATTERN_ENTRY + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiWhiteSpace(' ') + PsiElement(is)('is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Foo') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TUPLE_PATTERN_ENTRY + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('bar') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('d') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + TUPLE_PATTERN + PsiElement(LPAR)('(') + TUPLE_PATTERN_ENTRY + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Foo') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TUPLE_PATTERN_ENTRY + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiElement(IDENTIFIER)('a') + PsiWhiteSpace(' ') + PsiElement(in)('in') + PsiWhiteSpace(' ') + BINARY_EXPRESSION + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('1') + PsiElement(RANGE)('..') + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('2') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TUPLE_PATTERN_ENTRY + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TUPLE_PATTERN_ENTRY + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiWhiteSpace(' ') + PsiElement(NOT_IS)('!is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Foo') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TUPLE_PATTERN_ENTRY + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiElement(IDENTIFIER)('bar') + PsiWhiteSpace(' ') + PsiElement(EQ)('=') + PsiWhiteSpace(' ') + CALL_EXPRESSION + DOT_QIALIFIED_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('bar') + TYPE_ARGUMENT_LIST + PsiElement(LT)('<') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(GT)('>') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(RPAR)(')') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('d') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + TUPLE_PATTERN + PsiElement(LPAR)('(') + TUPLE_PATTERN_ENTRY + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Int') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TUPLE_PATTERN_ENTRY + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Int') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('2') + PsiWhiteSpace('\n ') + WHEN_ENTRY + PsiElement(else)('else') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + PsiElement(else)('else') + PsiWhiteSpace(' ') + PsiElement(continue)('continue') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n\n') + FUN + PsiElement(fun)('fun') + PsiWhiteSpace(' ') + PsiElement(IDENTIFIER)('foo') + TYPE_PARAMETER_LIST + + VALUE_PARAMETER_LIST + PsiElement(LPAR)('(') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + BLOCK + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + PsiElement(val)('val') + PsiWhiteSpace(' ') + PsiElement(IDENTIFIER)('a') + PsiWhiteSpace(' ') + PsiElement(EQ)('=') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('e') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Tree') + PsiElement(COMMA)(',') + PsiWhiteSpace('\n ') + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('Tree') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + EXPRESSION_PATTERN + NULL + PsiElement(null)('null') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + BINDING_PATTERN + PsiElement(QUEST)('?') + PsiElement(IDENTIFIER)('r') + PsiElement(RPAR)(')') + PsiElement(COMMA)(',') + PsiWhiteSpace('\n ') + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('c') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('1') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + WHEN_CONDITION + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + PsiElement(RPAR)(')') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + WHEN_CONDITION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('bar') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + WHEN_CONDITION + BINARY_EXPRESSION + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('2') + PsiWhiteSpace(' ') + PsiElement(PLUS)('+') + PsiWhiteSpace(' ') + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('3') + PsiElement(COMMA)(',') + PsiWhiteSpace('\n ') + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('c') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiElement(DOT)('.') + PsiElement(IDENTIFIER)('a') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + EXPRESSION_PATTERN + PsiElement(EQ)('=') + BINARY_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('a') + PsiWhiteSpace(' ') + PsiElement(PLUS)('+') + PsiWhiteSpace(' ') + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('3') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('b') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('c') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n') + PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/idea/testData/psi/When_ERR.jet b/idea/testData/psi/When_ERR.jet new file mode 100644 index 00000000000..f41b6e1b613 --- /dev/null +++ b/idea/testData/psi/When_ERR.jet @@ -0,0 +1,26 @@ +fun foo() { + when (e) { + } + when (e) { + is => foo + !is => foo + in => foo + !in => foo + => foo + else + } + when (e) { + is => + !is => + in => + !in => + !in => ; + => + else + else => + } + when (e) { + is - => foo + is (, , 1, , ) => foo + } +} \ No newline at end of file diff --git a/idea/testData/psi/When_ERR.txt b/idea/testData/psi/When_ERR.txt new file mode 100644 index 00000000000..ce43a2cdb12 --- /dev/null +++ b/idea/testData/psi/When_ERR.txt @@ -0,0 +1,235 @@ +JetFile: When_ERR.jet + NAMESPACE + FUN + PsiElement(fun)('fun') + PsiWhiteSpace(' ') + PsiElement(IDENTIFIER)('foo') + TYPE_PARAMETER_LIST + + VALUE_PARAMETER_LIST + PsiElement(LPAR)('(') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + BLOCK + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('e') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n ') + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('e') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiErrorElement:Expecting a type or a decomposer pattern + + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(NOT_IS)('!is') + PsiErrorElement:Expecting a type or a decomposer pattern + + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(in)('in') + PsiErrorElement:Expecting an expression + + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(NOT_IN)('!in') + PsiErrorElement:Expecting an expression + + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiErrorElement:Expecting an expression, is-condition or in-condition + + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + PsiElement(else)('else') + PsiErrorElement:Expecting 'continue' or '=> expression' + + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n ') + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('e') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiErrorElement:Expecting a type or a decomposer pattern + + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiErrorElement:Expecting an expression + + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(NOT_IS)('!is') + PsiErrorElement:Expecting a type or a decomposer pattern + + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiErrorElement:Expecting an expression + + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(in)('in') + PsiErrorElement:Expecting an expression + + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiErrorElement:Expecting an expression + + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(NOT_IN)('!in') + PsiErrorElement:Expecting an expression + + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiErrorElement:Expecting an expression + + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(NOT_IN)('!in') + PsiErrorElement:Expecting an expression + + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + PsiErrorElement:Expecting an expression + PsiElement(SEMICOLON)(';') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiErrorElement:Expecting an expression, is-condition or in-condition + + PsiElement(DOUBLE_ARROW)('=>') + PsiErrorElement:Expecting an expression + + PsiWhiteSpace('\n ') + WHEN_ENTRY + PsiElement(else)('else') + PsiErrorElement:Expecting 'continue' or '=> expression' + + PsiWhiteSpace('\n ') + WHEN_ENTRY + PsiElement(else)('else') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiErrorElement:Expecting an expression + + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n ') + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('e') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + PsiErrorElement:Pattern expected + PsiElement(MINUS)('-') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') + PsiWhiteSpace(' ') + TUPLE_PATTERN + PsiElement(LPAR)('(') + PsiErrorElement:Expecting a pattern + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + PsiErrorElement:Expecting a pattern + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + TUPLE_PATTERN_ENTRY + EXPRESSION_PATTERN + INTEGER_CONSTANT + PsiElement(INTEGER_LITERAL)('1') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + PsiErrorElement:Expecting a pattern + PsiElement(COMMA)(',') + PsiErrorElement:Expecting a pattern + + PsiWhiteSpace(' ') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('foo') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n') + PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/idea/testData/psi/examples/AnonymousObjects.txt b/idea/testData/psi/examples/AnonymousObjects.txt index b093fab8fa1..b94a8775a6b 100644 --- a/idea/testData/psi/examples/AnonymousObjects.txt +++ b/idea/testData/psi/examples/AnonymousObjects.txt @@ -25,7 +25,7 @@ JetFile: AnonymousObjects.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('MouseAdapter') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -65,7 +65,7 @@ JetFile: AnonymousObjects.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('MouseEvent') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -172,7 +172,7 @@ JetFile: AnonymousObjects.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('GodMEssage') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -185,7 +185,7 @@ JetFile: AnonymousObjects.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('RuntimeException') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') diff --git a/idea/testData/psi/examples/BinaryTree.jet b/idea/testData/psi/examples/BinaryTree.jet index 03a4f0a399f..83735811726 100644 --- a/idea/testData/psi/examples/BinaryTree.jet +++ b/idea/testData/psi/examples/BinaryTree.jet @@ -27,10 +27,10 @@ class BinaryTree : IMutableSet { fun contains(node : TreeNode, item : T) : Boolean { if (node == null) return false - compare(item, node.value) match { - case EQ => true - case LS => contains(node.left, item) - case GT => contains(node.right, item) + when(compare(item, node.value)) { + EQ => true + LS => contains(node.left, item) + GT => contains(node.right, item) } } } @@ -50,10 +50,10 @@ class BinaryTree : IMutableSet { node = TreeNode(item, parent) return true } - compare(item, node.value) match { - case EQ => false - case LS => add(ref node.left, node) - case GT => add(ref node.right, node) + when (compare(item, node.value)) { + EQ => false + LS => add(ref node.left, node) + GT => add(ref node.right, node) } } @@ -63,14 +63,14 @@ class BinaryTree : IMutableSet { root = TreeNode(item, null) return true } - compare(item, node.value) match { - case EQ => return false - case LS => + when (compare(item, node.value)) { + EQ => return false + LS => if (node.left == null) { node.left = TreeNode(item, node) return true } else return add(node.left) - case GT => + GT => if (node.right == null) { node.right = TreeNode(item, node) return true @@ -89,20 +89,20 @@ class BinaryTree : IMutableSet { fun find(node : TreeNode) : TreeNode { if (node == null) return null - compare(item, node.value) match { - case EQ => node - case LS => find(node.left) - case GT => find(node.right) + when (compare(item, node.value)) { + EQ => node + LS => find(node.left) + GT => find(node.right) } } } private fun remove(node : TreeNode) { - node match { - case TreeNode(null, null) => replace(node, null) - case TreeNode(null, right) => replace(node, right) - case TreeNode(left, null) => replace(node, left) - case TreeNode(left, right) => { + when (node) { + is TreeNode(null, null) => replace(node, null) + is TreeNode(null, right) => replace(node, right) + is TreeNode(left, null) => replace(node, left) + is TreeNode(left, right) => { val min = min(node.right) node.value = min.value remove(min) diff --git a/idea/testData/psi/examples/BinaryTree.txt b/idea/testData/psi/examples/BinaryTree.txt index 4858429fb72..8390e179d57 100644 --- a/idea/testData/psi/examples/BinaryTree.txt +++ b/idea/testData/psi/examples/BinaryTree.txt @@ -15,12 +15,12 @@ JetFile: BinaryTree.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableSet') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -47,7 +47,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -59,7 +59,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiWhiteSpace('\n ') PsiElement(RPAR)(')') @@ -75,7 +75,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiWhiteSpace('\n ') PROPERTY @@ -86,7 +86,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiWhiteSpace('\n\n ') PsiElement(RBRACE)('}') @@ -102,12 +102,12 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('MatchableComparison') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace('\n ') @@ -122,7 +122,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiWhiteSpace('\n ') PROPERTY @@ -150,12 +150,12 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Comparison') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -205,7 +205,7 @@ JetFile: BinaryTree.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -225,14 +225,15 @@ JetFile: BinaryTree.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('operator') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('operator') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('compareTo') @@ -246,14 +247,14 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -290,14 +291,14 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace(' ') BLOCK @@ -335,7 +336,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -345,14 +346,14 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace(' ') BLOCK @@ -380,7 +381,9 @@ JetFile: BinaryTree.jet BOOLEAN_CONSTANT PsiElement(false)('false') PsiWhiteSpace('\n ') - MATCH_EXPRESSION + WHEN + PsiElement(when)('when') + PsiElement(LPAR)('(') CALL_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('compare') @@ -399,81 +402,73 @@ JetFile: BinaryTree.jet REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('value') PsiElement(RPAR)(')') + PsiElement(RPAR)(')') PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('EQ') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - BOOLEAN_CONSTANT - PsiElement(true)('true') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('LS') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - CALL_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('contains') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - DOT_QIALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('left') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - VALUE_ARGUMENT + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('EQ') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + BOOLEAN_CONSTANT + PsiElement(true)('true') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('LS') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('contains') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + DOT_QIALIFIED_EXPRESSION REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('item') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('GT') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - CALL_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('contains') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - DOT_QIALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('right') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - VALUE_ARGUMENT + PsiElement(IDENTIFIER)('node') + PsiElement(DOT)('.') REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('item') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') + PsiElement(IDENTIFIER)('left') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('item') + PsiElement(RPAR)(')') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('GT') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('contains') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + DOT_QIALIFIED_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('right') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('item') + PsiElement(RPAR)(')') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') PsiWhiteSpace('\n ') PsiElement(RBRACE)('}') PsiWhiteSpace('\n ') @@ -496,14 +491,14 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace(' ') BLOCK @@ -582,7 +577,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -592,14 +587,14 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace(' ') BLOCK @@ -654,7 +649,10 @@ JetFile: BinaryTree.jet PsiWhiteSpace('\n ') PsiElement(RBRACE)('}') PsiWhiteSpace('\n ') - MATCH_EXPRESSION + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') CALL_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('compare') @@ -673,85 +671,77 @@ JetFile: BinaryTree.jet REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('value') PsiElement(RPAR)(')') + PsiElement(RPAR)(')') PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('EQ') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - BOOLEAN_CONSTANT - PsiElement(false)('false') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('LS') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - CALL_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('add') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - PsiElement(ref)('ref') - PsiWhiteSpace(' ') - DOT_QIALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('left') - PsiElement(COMMA)(',') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('EQ') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + BOOLEAN_CONSTANT + PsiElement(false)('false') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('LS') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('add') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + PsiElement(ref)('ref') PsiWhiteSpace(' ') - VALUE_ARGUMENT + DOT_QIALIFIED_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('node') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('GT') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - CALL_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('add') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - PsiElement(ref)('ref') - PsiWhiteSpace(' ') - DOT_QIALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('right') - PsiElement(COMMA)(',') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('left') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(RPAR)(')') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('GT') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('add') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + PsiElement(ref)('ref') PsiWhiteSpace(' ') - VALUE_ARGUMENT + DOT_QIALIFIED_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('node') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('right') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(RPAR)(')') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') PsiWhiteSpace('\n ') PsiElement(RBRACE)('}') PsiWhiteSpace('\n\n ') @@ -771,14 +761,14 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace(' ') BLOCK @@ -833,7 +823,10 @@ JetFile: BinaryTree.jet PsiWhiteSpace('\n ') PsiElement(RBRACE)('}') PsiWhiteSpace('\n ') - MATCH_EXPRESSION + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') CALL_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('compare') @@ -852,200 +845,192 @@ JetFile: BinaryTree.jet REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('value') PsiElement(RPAR)(')') + PsiElement(RPAR)(')') PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('EQ') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + RETURN + PsiElement(return)('return') PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('EQ') + BOOLEAN_CONSTANT + PsiElement(false)('false') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('LS') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace('\n ') + IF + PsiElement(if)('if') PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') + PsiElement(LPAR)('(') + CONDITION + BINARY_EXPRESSION + DOT_QIALIFIED_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('left') + PsiWhiteSpace(' ') + PsiElement(EQEQ)('==') + PsiWhiteSpace(' ') + NULL + PsiElement(null)('null') + PsiElement(RPAR)(')') PsiWhiteSpace(' ') - RETURN - PsiElement(return)('return') - PsiWhiteSpace(' ') - BOOLEAN_CONSTANT - PsiElement(false)('false') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('LS') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace('\n ') - IF - PsiElement(if)('if') - PsiWhiteSpace(' ') - PsiElement(LPAR)('(') - CONDITION - BINARY_EXPRESSION - DOT_QIALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('left') - PsiWhiteSpace(' ') - PsiElement(EQEQ)('==') - PsiWhiteSpace(' ') - NULL - PsiElement(null)('null') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - THEN - FUNCTION_LITERAL - PsiElement(LBRACE)('{') + THEN + FUNCTION_LITERAL + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + BODY + BINARY_EXPRESSION + DOT_QIALIFIED_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('left') + PsiWhiteSpace(' ') + PsiElement(EQ)('=') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('TreeNode') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('item') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(RPAR)(')') PsiWhiteSpace('\n ') - BODY - BINARY_EXPRESSION + RETURN + PsiElement(return)('return') + PsiWhiteSpace(' ') + BOOLEAN_CONSTANT + PsiElement(true)('true') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace(' ') + PsiElement(else)('else') + PsiWhiteSpace(' ') + ELSE + RETURN + PsiElement(return)('return') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('add') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT DOT_QIALIFIED_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('node') PsiElement(DOT)('.') REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('left') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - CALL_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('TreeNode') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('item') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - VALUE_ARGUMENT - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - RETURN - PsiElement(return)('return') - PsiWhiteSpace(' ') - BOOLEAN_CONSTANT - PsiElement(true)('true') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace(' ') - PsiElement(else)('else') - PsiWhiteSpace(' ') - ELSE - RETURN - PsiElement(return)('return') - PsiWhiteSpace(' ') - CALL_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('add') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - DOT_QIALIFIED_EXPRESSION + PsiElement(RPAR)(')') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('GT') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace('\n ') + IF + PsiElement(if)('if') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') + CONDITION + BINARY_EXPRESSION + DOT_QIALIFIED_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('right') + PsiWhiteSpace(' ') + PsiElement(EQEQ)('==') + PsiWhiteSpace(' ') + NULL + PsiElement(null)('null') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + THEN + FUNCTION_LITERAL + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + BODY + BINARY_EXPRESSION + DOT_QIALIFIED_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('right') + PsiWhiteSpace(' ') + PsiElement(EQ)('=') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('TreeNode') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('item') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + VALUE_ARGUMENT REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('node') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('left') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('GT') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' \n ') - IF - PsiElement(if)('if') - PsiWhiteSpace(' ') - PsiElement(LPAR)('(') - CONDITION - BINARY_EXPRESSION - DOT_QIALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('right') - PsiWhiteSpace(' ') - PsiElement(EQEQ)('==') - PsiWhiteSpace(' ') - NULL - PsiElement(null)('null') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - THEN - FUNCTION_LITERAL - PsiElement(LBRACE)('{') + PsiElement(RPAR)(')') PsiWhiteSpace('\n ') - BODY - BINARY_EXPRESSION + RETURN + PsiElement(return)('return') + PsiWhiteSpace(' ') + BOOLEAN_CONSTANT + PsiElement(true)('true') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace(' ') + PsiElement(else)('else') + PsiWhiteSpace(' ') + ELSE + RETURN + PsiElement(return)('return') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('add') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT DOT_QIALIFIED_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('node') PsiElement(DOT)('.') REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('right') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - CALL_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('TreeNode') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('item') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - VALUE_ARGUMENT - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - RETURN - PsiElement(return)('return') - PsiWhiteSpace(' ') - BOOLEAN_CONSTANT - PsiElement(true)('true') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace(' ') - PsiElement(else)('else') - PsiWhiteSpace(' ') - ELSE - RETURN - PsiElement(return)('return') - PsiWhiteSpace(' ') - CALL_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('add') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - DOT_QIALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('right') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') + PsiElement(RPAR)(')') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') PsiWhiteSpace('\n ') PsiElement(RBRACE)('}') PsiWhiteSpace('\n ') @@ -1068,14 +1053,14 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace(' ') BLOCK @@ -1165,14 +1150,14 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiWhiteSpace(' ') BLOCK @@ -1200,7 +1185,10 @@ JetFile: BinaryTree.jet NULL PsiElement(null)('null') PsiWhiteSpace('\n ') - MATCH_EXPRESSION + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') CALL_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('compare') @@ -1219,71 +1207,63 @@ JetFile: BinaryTree.jet REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('value') PsiElement(RPAR)(')') + PsiElement(RPAR)(')') PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('EQ') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('LS') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - CALL_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('find') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - DOT_QIALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('left') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('GT') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - CALL_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('find') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - DOT_QIALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('right') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') + PsiElement(IDENTIFIER)('EQ') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('LS') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('find') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + DOT_QIALIFIED_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('left') + PsiElement(RPAR)(')') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('GT') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('find') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + DOT_QIALIFIED_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('right') + PsiElement(RPAR)(')') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') PsiWhiteSpace('\n ') PsiElement(RBRACE)('}') PsiWhiteSpace('\n ') @@ -1306,202 +1286,215 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiElement(RPAR)(')') PsiWhiteSpace(' ') BLOCK PsiElement(LBRACE)('{') PsiWhiteSpace('\n ') - MATCH_EXPRESSION + WHEN + PsiElement(when)('when') + PsiWhiteSpace(' ') + PsiElement(LPAR)('(') REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('node') + PsiElement(RPAR)(')') PsiWhiteSpace(' ') - PsiElement(match)('match') - PsiWhiteSpace(' ') - MATCH_BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('TreeNode') - TUPLE_PATTERN - PsiElement(LPAR)('(') - PATTERN - NULL - PsiElement(null)('null') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - PATTERN - NULL - PsiElement(null)('null') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - CALL_EXPRESSION + DECOMPOSER_PATTERN REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('replace') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - VALUE_ARGUMENT - NULL - PsiElement(null)('null') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE PsiElement(IDENTIFIER)('TreeNode') - TUPLE_PATTERN + DECOMPOSER_ARGUMENT_LIST PsiElement(LPAR)('(') - PATTERN - NULL - PsiElement(null)('null') + DECOMPOSER_ARGUMENT + EXPRESSION_PATTERN + NULL + PsiElement(null)('null') PsiElement(COMMA)(',') PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('right') + DECOMPOSER_ARGUMENT + EXPRESSION_PATTERN + NULL + PsiElement(null)('null') PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('replace') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + VALUE_ARGUMENT + NULL + PsiElement(null)('null') + PsiElement(RPAR)(')') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - CALL_EXPRESSION + DECOMPOSER_PATTERN REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('replace') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - VALUE_ARGUMENT - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('right') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE PsiElement(IDENTIFIER)('TreeNode') - TUPLE_PATTERN + DECOMPOSER_ARGUMENT_LIST PsiElement(LPAR)('(') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('left') + DECOMPOSER_ARGUMENT + EXPRESSION_PATTERN + NULL + PsiElement(null)('null') PsiElement(COMMA)(',') PsiWhiteSpace(' ') - PATTERN - NULL - PsiElement(null)('null') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('right') PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('replace') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('right') + PsiElement(RPAR)(')') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - CALL_EXPRESSION + DECOMPOSER_PATTERN REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('replace') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - VALUE_ARGUMENT - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('left') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - MATCH_ENTRY - PsiElement(case)('case') - PsiWhiteSpace(' ') - PATTERN - USER_TYPE PsiElement(IDENTIFIER)('TreeNode') - TUPLE_PATTERN + DECOMPOSER_ARGUMENT_LIST PsiElement(LPAR)('(') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('left') + DECOMPOSER_ARGUMENT + TYPE_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('left') PsiElement(COMMA)(',') PsiWhiteSpace(' ') - PATTERN - USER_TYPE - PsiElement(IDENTIFIER)('right') + DECOMPOSER_ARGUMENT + EXPRESSION_PATTERN + NULL + PsiElement(null)('null') PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('replace') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('left') + PsiElement(RPAR)(')') + PsiWhiteSpace('\n ') + WHEN_ENTRY + WHEN_CONDITION + PsiElement(is)('is') PsiWhiteSpace(' ') - PsiElement(DOUBLE_ARROW)('=>') - PsiWhiteSpace(' ') - FUNCTION_LITERAL - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - BODY - PROPERTY - PsiElement(val)('val') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('min') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - CALL_EXPRESSION + DECOMPOSER_PATTERN + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('TreeNode') + DECOMPOSER_ARGUMENT_LIST + PsiElement(LPAR)('(') + DECOMPOSER_ARGUMENT + TYPE_PATTERN REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('min') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - DOT_QIALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('right') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - BINARY_EXPRESSION - DOT_QIALIFIED_EXPRESSION + PsiElement(IDENTIFIER)('left') + PsiElement(COMMA)(',') + PsiWhiteSpace(' ') + DECOMPOSER_ARGUMENT + TYPE_PATTERN REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('node') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('value') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - DOT_QIALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('min') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('value') - PsiWhiteSpace('\n ') + PsiElement(IDENTIFIER)('right') + PsiElement(RPAR)(')') + PsiWhiteSpace(' ') + PsiElement(DOUBLE_ARROW)('=>') + PsiWhiteSpace(' ') + FUNCTION_LITERAL + PsiElement(LBRACE)('{') + PsiWhiteSpace('\n ') + BODY + PROPERTY + PsiElement(val)('val') + PsiWhiteSpace(' ') + PsiElement(IDENTIFIER)('min') + PsiWhiteSpace(' ') + PsiElement(EQ)('=') + PsiWhiteSpace(' ') CALL_EXPRESSION REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('remove') + PsiElement(IDENTIFIER)('min') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') VALUE_ARGUMENT - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('min') + DOT_QIALIFIED_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('right') PsiElement(RPAR)(')') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') + PsiWhiteSpace('\n ') + BINARY_EXPRESSION + DOT_QIALIFIED_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('node') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('value') + PsiWhiteSpace(' ') + PsiElement(EQ)('=') + PsiWhiteSpace(' ') + DOT_QIALIFIED_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('min') + PsiElement(DOT)('.') + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('value') + PsiWhiteSpace('\n ') + CALL_EXPRESSION + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('remove') + VALUE_ARGUMENT_LIST + PsiElement(LPAR)('(') + VALUE_ARGUMENT + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('min') + PsiElement(RPAR)(')') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') + PsiWhiteSpace('\n ') + PsiElement(RBRACE)('}') PsiWhiteSpace('\n\n ') FUN PsiElement(fun)('fun') @@ -1517,7 +1510,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -1527,7 +1520,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -1701,7 +1694,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -1766,12 +1759,12 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IIterator') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -1800,12 +1793,12 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableIterator') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -1817,7 +1810,7 @@ JetFile: BinaryTree.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableIterator') PsiWhiteSpace(' ') CLASS_BODY @@ -1854,7 +1847,7 @@ JetFile: BinaryTree.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -1874,7 +1867,7 @@ JetFile: BinaryTree.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -1889,7 +1882,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiWhiteSpace('\n\n ') CONSTRUCTOR @@ -1949,7 +1942,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') BLOCK @@ -2025,7 +2018,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('TreeNode') PsiWhiteSpace(' ') BLOCK @@ -2295,7 +2288,7 @@ JetFile: BinaryTree.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR diff --git a/idea/testData/psi/examples/BitArith.txt b/idea/testData/psi/examples/BitArith.txt index e61c85a0117..52992373142 100644 --- a/idea/testData/psi/examples/BitArith.txt +++ b/idea/testData/psi/examples/BitArith.txt @@ -14,7 +14,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -43,7 +43,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -53,7 +53,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -89,7 +89,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -99,7 +99,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -142,7 +142,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -152,7 +152,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -194,7 +194,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -204,7 +204,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -248,7 +248,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('INumber') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -336,7 +336,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('INumber') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -381,7 +381,7 @@ JetFile: BitArith.jet PsiElement(as)('as') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace('\n\n') FUN @@ -398,7 +398,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('INumber') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -459,7 +459,7 @@ JetFile: BitArith.jet PsiElement(fun)('fun') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('matchMask') @@ -473,7 +473,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -509,7 +509,7 @@ JetFile: BitArith.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IComparable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') @@ -529,7 +529,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace('\n ') FUN @@ -537,8 +537,9 @@ JetFile: BitArith.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('operator') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('operator') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') @@ -569,8 +570,9 @@ JetFile: BitArith.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('operator') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('operator') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') @@ -586,7 +588,7 @@ JetFile: BitArith.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') diff --git a/idea/testData/psi/examples/Builder.txt b/idea/testData/psi/examples/Builder.txt index 148d592d673..fcb03523ccf 100644 --- a/idea/testData/psi/examples/Builder.txt +++ b/idea/testData/psi/examples/Builder.txt @@ -15,7 +15,7 @@ JetFile: Builder.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('AntBuilder') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -79,7 +79,7 @@ JetFile: Builder.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('File') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -215,7 +215,7 @@ JetFile: Builder.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ClassPathEntry') PsiWhiteSpace(' ') CLASS_BODY @@ -235,7 +235,7 @@ JetFile: Builder.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ClassPathEntry') PsiComment(BLOCK_COMMENT)('/*...*/') PsiElement(RPAR)(')') @@ -255,7 +255,7 @@ JetFile: Builder.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('String') PsiWhiteSpace('\n ') FUN @@ -272,7 +272,7 @@ JetFile: Builder.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('String') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -297,7 +297,7 @@ JetFile: Builder.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ClassPathEntry') PsiWhiteSpace(' ') CLASS_BODY @@ -317,7 +317,7 @@ JetFile: Builder.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ClassPathEntry') PsiComment(BLOCK_COMMENT)('/*...*/') PsiElement(RPAR)(')') @@ -349,7 +349,7 @@ JetFile: Builder.jet PsiElement(LBRACE)('{') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Library') PsiElement(DOT)('.') VALUE_PARAMETER_LIST @@ -359,7 +359,7 @@ JetFile: Builder.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Library') PsiElement(RBRACE)('}') PsiElement(RPAR)(')') @@ -378,7 +378,7 @@ JetFile: Builder.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Library') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') diff --git a/idea/testData/psi/examples/Color.txt b/idea/testData/psi/examples/Color.txt index 67346ae3419..23a51d15de1 100644 --- a/idea/testData/psi/examples/Color.txt +++ b/idea/testData/psi/examples/Color.txt @@ -19,7 +19,7 @@ JetFile: Color.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -31,7 +31,7 @@ JetFile: Color.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -43,7 +43,7 @@ JetFile: Color.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -60,7 +60,7 @@ JetFile: Color.jet INITIALIZER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Color') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -89,7 +89,7 @@ JetFile: Color.jet INITIALIZER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Color') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -118,7 +118,7 @@ JetFile: Color.jet INITIALIZER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Color') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') diff --git a/idea/testData/psi/examples/FunctionsAndTypes.txt b/idea/testData/psi/examples/FunctionsAndTypes.txt index 9d277bb37d0..4ee28b25ee4 100644 --- a/idea/testData/psi/examples/FunctionsAndTypes.txt +++ b/idea/testData/psi/examples/FunctionsAndTypes.txt @@ -15,14 +15,14 @@ JetFile: FunctionsAndTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -43,19 +43,19 @@ JetFile: FunctionsAndTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -79,12 +79,12 @@ JetFile: FunctionsAndTypes.jet TUPLE_TYPE PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(RPAR)(')') PsiElement(RPAR)(')') @@ -92,7 +92,7 @@ JetFile: FunctionsAndTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -114,7 +114,7 @@ JetFile: FunctionsAndTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -126,14 +126,14 @@ JetFile: FunctionsAndTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Y') PsiElement(RBRACE)('}') PsiWhiteSpace(' ') @@ -162,14 +162,14 @@ JetFile: FunctionsAndTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Y') PsiElement(RBRACE)('}') PsiElement(RPAR)(')') @@ -182,14 +182,14 @@ JetFile: FunctionsAndTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Y') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Z') PsiElement(RBRACE)('}') PsiWhiteSpace(' ') @@ -223,7 +223,7 @@ JetFile: FunctionsAndTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -233,14 +233,14 @@ JetFile: FunctionsAndTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -272,7 +272,7 @@ JetFile: FunctionsAndTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -282,14 +282,14 @@ JetFile: FunctionsAndTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -321,14 +321,14 @@ JetFile: FunctionsAndTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -393,14 +393,14 @@ JetFile: FunctionsAndTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('R') PsiElement(RBRACE)('}') PsiWhiteSpace('\n') @@ -423,14 +423,14 @@ JetFile: FunctionsAndTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiWhiteSpace(' ') PsiElement(DOUBLE_ARROW)('=>') @@ -461,14 +461,14 @@ JetFile: FunctionsAndTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -500,7 +500,7 @@ JetFile: FunctionsAndTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -536,7 +536,7 @@ JetFile: FunctionsAndTypes.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiWhiteSpace(' ') PsiElement(DOUBLE_ARROW)('=>') @@ -613,14 +613,14 @@ JetFile: FunctionsAndTypes.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiElement(RBRACE)('}') PsiWhiteSpace(' ') diff --git a/idea/testData/psi/examples/Graph.txt b/idea/testData/psi/examples/Graph.txt index 24e72752ea0..5ce2be41f2d 100644 --- a/idea/testData/psi/examples/Graph.txt +++ b/idea/testData/psi/examples/Graph.txt @@ -19,7 +19,7 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(RPAR)(')') PsiWhiteSpace('\n\n') @@ -46,7 +46,7 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -58,7 +58,7 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -70,7 +70,7 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(RPAR)(')') PsiWhiteSpace('\n\n') @@ -105,22 +105,22 @@ JetFile: Graph.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ArrayList') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Edge') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(GT)('>') PsiElement(GT)('>') @@ -146,17 +146,17 @@ JetFile: Graph.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('HashSet') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Vertex') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(GT)('>') PsiElement(GT)('>') @@ -172,22 +172,22 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IList') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Edge') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(GT)('>') PsiElement(GT)('>') @@ -206,22 +206,22 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ISet') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Edge') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(GT)('>') PsiElement(GT)('>') @@ -246,7 +246,7 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -256,7 +256,7 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -266,7 +266,7 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -287,7 +287,7 @@ JetFile: Graph.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Edge') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -325,7 +325,7 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -346,7 +346,7 @@ JetFile: Graph.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Edge') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -384,12 +384,12 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Vertex') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -456,14 +456,14 @@ JetFile: Graph.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Unit') PsiElement(RBRACE)('}') PsiElement(RPAR)(')') @@ -482,17 +482,17 @@ JetFile: Graph.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('HashSet') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Vertex') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(GT)('>') PsiElement(GT)('>') @@ -545,12 +545,12 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Vertex') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(GT)('>') PsiElement(COMMA)(',') @@ -561,17 +561,17 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ISet') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Vertex') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(GT)('>') PsiElement(GT)('>') @@ -588,14 +588,14 @@ JetFile: Graph.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Unit') PsiElement(RBRACE)('}') PsiElement(RPAR)(')') @@ -698,17 +698,17 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IPushPop') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Vertex') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(GT)('>') PsiElement(GT)('>') @@ -720,17 +720,17 @@ JetFile: Graph.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ISet') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Vertex') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(GT)('>') PsiElement(GT)('>') @@ -747,14 +747,14 @@ JetFile: Graph.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Unit') PsiElement(RBRACE)('}') PsiElement(RPAR)(')') diff --git a/idea/testData/psi/examples/IPushPop.txt b/idea/testData/psi/examples/IPushPop.txt index ddef3e59312..1032091dab5 100644 --- a/idea/testData/psi/examples/IPushPop.txt +++ b/idea/testData/psi/examples/IPushPop.txt @@ -24,7 +24,7 @@ JetFile: IPushPop.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n ') FUN @@ -41,7 +41,7 @@ JetFile: IPushPop.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace('\n ') @@ -58,7 +58,7 @@ JetFile: IPushPop.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/idea/testData/psi/examples/PolymorphicClassObjects.txt b/idea/testData/psi/examples/PolymorphicClassObjects.txt index aa9d9b96060..6ac30c9c9c5 100644 --- a/idea/testData/psi/examples/PolymorphicClassObjects.txt +++ b/idea/testData/psi/examples/PolymorphicClassObjects.txt @@ -25,8 +25,9 @@ JetFile: PolymorphicClassObjects.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('operator') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('operator') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') @@ -42,7 +43,7 @@ JetFile: PolymorphicClassObjects.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(RPAR)(')') PsiWhiteSpace('\n ') @@ -59,7 +60,7 @@ JetFile: PolymorphicClassObjects.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('R') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') @@ -97,17 +98,17 @@ JetFile: PolymorphicClassObjects.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Builder') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('R') PsiElement(GT)('>') PsiWhiteSpace('\n') @@ -135,7 +136,7 @@ JetFile: PolymorphicClassObjects.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Buildable') PsiWhiteSpace(' ') CLASS_BODY @@ -164,17 +165,17 @@ JetFile: PolymorphicClassObjects.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Builder') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('R') PsiElement(GT)('>') PsiWhiteSpace('\n\n ') @@ -201,18 +202,18 @@ JetFile: PolymorphicClassObjects.jet TYPE_CONSTRAINT_LIST TYPE_CONSTRAINT TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Iterable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(GT)('>') PsiElement(COMMA)(',') @@ -223,30 +224,30 @@ JetFile: PolymorphicClassObjects.jet PsiElement(object)('object') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Buildable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') CLASS_BODY @@ -274,14 +275,14 @@ JetFile: PolymorphicClassObjects.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('E') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('R') PsiElement(RBRACE)('}') PsiElement(RPAR)(')') @@ -289,12 +290,12 @@ JetFile: PolymorphicClassObjects.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('R') PsiElement(GT)('>') PsiWhiteSpace(' ') diff --git a/idea/testData/psi/examples/Queue.txt b/idea/testData/psi/examples/Queue.txt index 8b81f125b02..c07c37bbb88 100644 --- a/idea/testData/psi/examples/Queue.txt +++ b/idea/testData/psi/examples/Queue.txt @@ -15,12 +15,12 @@ JetFile: Queue.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IPushPop') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -49,7 +49,7 @@ JetFile: Queue.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -61,12 +61,12 @@ JetFile: Queue.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Item') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -82,12 +82,12 @@ JetFile: Queue.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Item') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -107,12 +107,12 @@ JetFile: Queue.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Item') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -138,7 +138,7 @@ JetFile: Queue.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -156,7 +156,7 @@ JetFile: Queue.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Item') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -276,7 +276,7 @@ JetFile: Queue.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('UnderflowException') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') diff --git a/idea/testData/psi/examples/Stack.txt b/idea/testData/psi/examples/Stack.txt index 029ac72201c..99ed6f90f0a 100644 --- a/idea/testData/psi/examples/Stack.txt +++ b/idea/testData/psi/examples/Stack.txt @@ -15,12 +15,12 @@ JetFile: Stack.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IPushPop') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -41,12 +41,12 @@ JetFile: Stack.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ArrayList') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -71,7 +71,7 @@ JetFile: Stack.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') diff --git a/idea/testData/psi/examples/UnionFind.txt b/idea/testData/psi/examples/UnionFind.txt index 6f25999d3e6..4f25b41f6f3 100644 --- a/idea/testData/psi/examples/UnionFind.txt +++ b/idea/testData/psi/examples/UnionFind.txt @@ -26,7 +26,7 @@ JetFile: UnionFind.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -46,7 +46,7 @@ JetFile: UnionFind.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') BLOCK @@ -102,14 +102,14 @@ JetFile: UnionFind.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') BLOCK @@ -211,7 +211,7 @@ JetFile: UnionFind.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -221,7 +221,7 @@ JetFile: UnionFind.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -359,7 +359,7 @@ JetFile: UnionFind.jet PsiElement(val)('val') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('isOdd') @@ -367,7 +367,7 @@ JetFile: UnionFind.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR diff --git a/idea/testData/psi/examples/UpdateOperation.txt b/idea/testData/psi/examples/UpdateOperation.txt index f5b8277e2ae..84c333e8e06 100644 --- a/idea/testData/psi/examples/UpdateOperation.txt +++ b/idea/testData/psi/examples/UpdateOperation.txt @@ -14,7 +14,7 @@ JetFile: UpdateOperation.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -24,7 +24,7 @@ JetFile: UpdateOperation.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -54,7 +54,7 @@ JetFile: UpdateOperation.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Pair') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -64,7 +64,7 @@ JetFile: UpdateOperation.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -83,7 +83,7 @@ JetFile: UpdateOperation.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -102,7 +102,7 @@ JetFile: UpdateOperation.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Pair') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -133,7 +133,7 @@ JetFile: UpdateOperation.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Point') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') diff --git a/idea/testData/psi/examples/With.txt b/idea/testData/psi/examples/With.txt index 35917c08e09..ec32a1317b3 100644 --- a/idea/testData/psi/examples/With.txt +++ b/idea/testData/psi/examples/With.txt @@ -5,8 +5,9 @@ JetFile: With.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('inline') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('inline') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') @@ -25,7 +26,7 @@ JetFile: With.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -38,7 +39,7 @@ JetFile: With.jet FUNCTION_TYPE PsiElement(LBRACE)('{') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(DOT)('.') VALUE_PARAMETER_LIST @@ -48,7 +49,7 @@ JetFile: With.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Unit') PsiElement(RBRACE)('}') PsiElement(RPAR)(')') diff --git a/idea/testData/psi/examples/array/MutableArray.txt b/idea/testData/psi/examples/array/MutableArray.txt index 6d249c14ef3..8f6089e24e6 100644 --- a/idea/testData/psi/examples/array/MutableArray.txt +++ b/idea/testData/psi/examples/array/MutableArray.txt @@ -23,7 +23,7 @@ JetFile: MutableArray.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ISized') PsiWhiteSpace(' ') CLASS_BODY @@ -34,8 +34,9 @@ JetFile: MutableArray.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('operator') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('operator') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') @@ -51,14 +52,14 @@ JetFile: MutableArray.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') @@ -84,7 +85,7 @@ JetFile: MutableArray.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ISized') PsiWhiteSpace(' ') CLASS_BODY @@ -97,8 +98,9 @@ JetFile: MutableArray.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('operator') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('operator') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') @@ -114,7 +116,7 @@ JetFile: MutableArray.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -124,7 +126,7 @@ JetFile: MutableArray.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace('\n') @@ -145,24 +147,24 @@ JetFile: MutableArray.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ReadOnlyArray') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(COMMA)(',') PsiWhiteSpace(' ') DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('WriteOnlyArray') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') diff --git a/idea/testData/psi/examples/collections/ArrayList.txt b/idea/testData/psi/examples/collections/ArrayList.txt index ee7261f8d30..0db6dc82900 100644 --- a/idea/testData/psi/examples/collections/ArrayList.txt +++ b/idea/testData/psi/examples/collections/ArrayList.txt @@ -15,12 +15,12 @@ JetFile: ArrayList.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableList') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -89,12 +89,12 @@ JetFile: ArrayList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IIterator') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -123,12 +123,12 @@ JetFile: ArrayList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableIterator') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -140,7 +140,7 @@ JetFile: ArrayList.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableIterator') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -216,7 +216,7 @@ JetFile: ArrayList.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ConcurrentModificationException') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -264,7 +264,7 @@ JetFile: ArrayList.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('NoMoreElementsException') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -394,7 +394,7 @@ JetFile: ArrayList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -439,7 +439,7 @@ JetFile: ArrayList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -469,7 +469,7 @@ JetFile: ArrayList.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IndexOutOfBoundsException') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -539,7 +539,7 @@ JetFile: ArrayList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -549,7 +549,7 @@ JetFile: ArrayList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -619,7 +619,7 @@ JetFile: ArrayList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -629,7 +629,7 @@ JetFile: ArrayList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -823,7 +823,7 @@ JetFile: ArrayList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') diff --git a/idea/testData/psi/examples/collections/HashMap.txt b/idea/testData/psi/examples/collections/HashMap.txt index f46d525c340..bb7f2b5d75d 100644 --- a/idea/testData/psi/examples/collections/HashMap.txt +++ b/idea/testData/psi/examples/collections/HashMap.txt @@ -27,14 +27,14 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Any') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n ') PsiElement(EQ)('=') @@ -50,9 +50,9 @@ JetFile: HashMap.jet PsiElement(as)('as') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('java') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('lang') @@ -72,9 +72,9 @@ JetFile: HashMap.jet PsiElement(as)('as') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('java') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('lang') @@ -99,7 +99,7 @@ JetFile: HashMap.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IEquality') PsiWhiteSpace(' ') CLASS_BODY @@ -113,7 +113,7 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Integer') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR @@ -134,9 +134,9 @@ JetFile: HashMap.jet PsiElement(as)('as') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('java') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('lang') @@ -186,14 +186,14 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiWhiteSpace('\n ') FUN @@ -210,7 +210,7 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -220,14 +220,14 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiWhiteSpace('\n ') FUN @@ -244,14 +244,14 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiWhiteSpace('\n ') FUN @@ -268,14 +268,14 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') @@ -299,7 +299,7 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Any') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -308,7 +308,7 @@ JetFile: HashMap.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IHashable') PsiWhiteSpace('\n ') PsiComment(EOL_COMMENT)('// equals and hashCode implementations are inherited') @@ -318,14 +318,15 @@ JetFile: HashMap.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('inline') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('inline') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Any') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('hashable') @@ -338,7 +339,7 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('HashableWrapper') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -347,7 +348,7 @@ JetFile: HashMap.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('HashableWrapper') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -386,7 +387,7 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -396,14 +397,14 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n ') FUN @@ -420,14 +421,14 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Integer') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') @@ -447,7 +448,7 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IHashable') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -456,12 +457,12 @@ JetFile: HashMap.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IHashingStrategy') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -485,7 +486,7 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -495,14 +496,14 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -538,14 +539,14 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Integer') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -574,12 +575,12 @@ JetFile: HashMap.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IHashingStrategy') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -603,7 +604,7 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -613,14 +614,14 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n ') PsiElement(EQ)('=') @@ -664,14 +665,14 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Integer') PsiWhiteSpace('\n ') PsiElement(EQ)('=') @@ -712,17 +713,17 @@ JetFile: HashMap.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMap') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -736,8 +737,9 @@ JetFile: HashMap.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('inline') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('inline') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') @@ -753,7 +755,7 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -781,8 +783,9 @@ JetFile: HashMap.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('inline') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('inline') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') @@ -798,7 +801,7 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -808,7 +811,7 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -856,12 +859,12 @@ JetFile: HashMap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IHashingStrategy') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -871,17 +874,17 @@ JetFile: HashMap.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMap') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('V') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -908,12 +911,12 @@ JetFile: HashMap.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('JavaObjectHashingStrategy') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('K') PsiElement(GT)('>') VALUE_ARGUMENT_LIST diff --git a/idea/testData/psi/examples/collections/IIterable.txt b/idea/testData/psi/examples/collections/IIterable.txt index dd8d0ebbd17..16318ecb115 100644 --- a/idea/testData/psi/examples/collections/IIterable.txt +++ b/idea/testData/psi/examples/collections/IIterable.txt @@ -32,12 +32,12 @@ JetFile: IIterable.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IIterator') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace('\n') diff --git a/idea/testData/psi/examples/collections/IIterator.txt b/idea/testData/psi/examples/collections/IIterator.txt index 4a0ad5e50ad..76458603ae3 100644 --- a/idea/testData/psi/examples/collections/IIterator.txt +++ b/idea/testData/psi/examples/collections/IIterator.txt @@ -32,7 +32,7 @@ JetFile: IIterator.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace('\n ') PROPERTY @@ -43,7 +43,7 @@ JetFile: IIterator.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n\n ') FUN @@ -60,7 +60,7 @@ JetFile: IIterator.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('MutableArray') TYPE_ARGUMENT_LIST PsiElement(LT)('<') @@ -68,7 +68,7 @@ JetFile: IIterator.jet PsiElement(in)('in') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -76,7 +76,7 @@ JetFile: IIterator.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') BLOCK @@ -127,7 +127,7 @@ JetFile: IIterator.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('MutableArray') TYPE_ARGUMENT_LIST PsiElement(LT)('<') @@ -135,7 +135,7 @@ JetFile: IIterator.jet PsiElement(in)('in') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(COMMA)(',') @@ -146,7 +146,7 @@ JetFile: IIterator.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -156,14 +156,14 @@ JetFile: IIterator.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') BLOCK diff --git a/idea/testData/psi/examples/collections/IList.txt b/idea/testData/psi/examples/collections/IList.txt index 80a332b1b09..c45d4ae225e 100644 --- a/idea/testData/psi/examples/collections/IList.txt +++ b/idea/testData/psi/examples/collections/IList.txt @@ -21,19 +21,19 @@ JetFile: IList.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IIterable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(COMMA)(',') PsiWhiteSpace(' ') DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ISized') PsiWhiteSpace(' ') CLASS_BODY @@ -44,8 +44,9 @@ JetFile: IList.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('operator') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('operator') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') @@ -61,14 +62,14 @@ JetFile: IList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace('\n ') PROPERTY @@ -79,7 +80,7 @@ JetFile: IList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/idea/testData/psi/examples/collections/IMutableIterable.txt b/idea/testData/psi/examples/collections/IMutableIterable.txt index 29acad604de..e12bb401875 100644 --- a/idea/testData/psi/examples/collections/IMutableIterable.txt +++ b/idea/testData/psi/examples/collections/IMutableIterable.txt @@ -21,12 +21,12 @@ JetFile: IMutableIterable.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IIterable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -46,12 +46,12 @@ JetFile: IMutableIterable.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableIterator') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace('\n') diff --git a/idea/testData/psi/examples/collections/IMutableIterator.txt b/idea/testData/psi/examples/collections/IMutableIterator.txt index aa8a8872059..5d5041d2987 100644 --- a/idea/testData/psi/examples/collections/IMutableIterator.txt +++ b/idea/testData/psi/examples/collections/IMutableIterator.txt @@ -21,12 +21,12 @@ JetFile: IMutableIterator.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IIterator') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -46,7 +46,7 @@ JetFile: IMutableIterator.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace('\n\n') PsiComment(BLOCK_COMMENT)('/*\n Considerations:\n pro: why not + non iteration breaking\n con: counter-intuitive for, e.g., TreeSet\n\n\n fun addBefore(item : T) : Boolean\n fun addAfter(item : T) : Boolean\n*/') diff --git a/idea/testData/psi/examples/collections/IMutableList.txt b/idea/testData/psi/examples/collections/IMutableList.txt index 81389ab6021..525826a3e0b 100644 --- a/idea/testData/psi/examples/collections/IMutableList.txt +++ b/idea/testData/psi/examples/collections/IMutableList.txt @@ -18,24 +18,24 @@ JetFile: IMutableList.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IList') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(COMMA)(',') PsiWhiteSpace(' ') DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableIterable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -56,7 +56,7 @@ JetFile: IMutableList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -66,14 +66,14 @@ JetFile: IMutableList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace('\n ') FUN @@ -90,7 +90,7 @@ JetFile: IMutableList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -100,7 +100,7 @@ JetFile: IMutableList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace('\n ') @@ -118,14 +118,14 @@ JetFile: IMutableList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace('\n ') FUN @@ -141,12 +141,12 @@ JetFile: IMutableList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableIterator') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace('\n') diff --git a/idea/testData/psi/examples/collections/IMutableSet.txt b/idea/testData/psi/examples/collections/IMutableSet.txt index 06178d34959..c681cda21b6 100644 --- a/idea/testData/psi/examples/collections/IMutableSet.txt +++ b/idea/testData/psi/examples/collections/IMutableSet.txt @@ -18,24 +18,24 @@ JetFile: IMutableSet.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ISet') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(COMMA)(',') PsiWhiteSpace(' ') DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableIterable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -56,14 +56,14 @@ JetFile: IMutableSet.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n ') FUN @@ -80,14 +80,14 @@ JetFile: IMutableSet.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/idea/testData/psi/examples/collections/ISet.txt b/idea/testData/psi/examples/collections/ISet.txt index e3595b21db6..c5c4b2f3078 100644 --- a/idea/testData/psi/examples/collections/ISet.txt +++ b/idea/testData/psi/examples/collections/ISet.txt @@ -18,19 +18,19 @@ JetFile: ISet.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IIterable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(COMMA)(',') PsiWhiteSpace(' ') DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ISized') PsiWhiteSpace(' ') CLASS_BODY @@ -50,14 +50,14 @@ JetFile: ISet.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/idea/testData/psi/examples/collections/ISized.txt b/idea/testData/psi/examples/collections/ISized.txt index be622e499eb..ee10e42bcc7 100644 --- a/idea/testData/psi/examples/collections/ISized.txt +++ b/idea/testData/psi/examples/collections/ISized.txt @@ -21,7 +21,7 @@ JetFile: ISized.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/idea/testData/psi/examples/collections/LinkedList.txt b/idea/testData/psi/examples/collections/LinkedList.txt index 031de1793bb..6128f7942dd 100644 --- a/idea/testData/psi/examples/collections/LinkedList.txt +++ b/idea/testData/psi/examples/collections/LinkedList.txt @@ -15,12 +15,12 @@ JetFile: LinkedList.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableList') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -46,7 +46,7 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Item') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -61,7 +61,7 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Item') PsiWhiteSpace('\n ') PROPERTY @@ -72,7 +72,7 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Item') PsiWhiteSpace('\n ') PsiElement(RBRACE)('}') @@ -88,7 +88,7 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Item') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -107,7 +107,7 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Item') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -149,7 +149,7 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -159,7 +159,7 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -379,7 +379,7 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -448,14 +448,14 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') BLOCK @@ -680,7 +680,7 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -690,14 +690,14 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') BLOCK @@ -782,7 +782,7 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -861,12 +861,12 @@ JetFile: LinkedList.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableIterator') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace('\n') diff --git a/idea/testData/psi/examples/collections/List.txt b/idea/testData/psi/examples/collections/List.txt index 13b5342d1a1..75b180d1b16 100644 --- a/idea/testData/psi/examples/collections/List.txt +++ b/idea/testData/psi/examples/collections/List.txt @@ -23,7 +23,7 @@ JetFile: List.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -32,12 +32,12 @@ JetFile: List.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IList') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -54,12 +54,12 @@ JetFile: List.jet INITIALIZER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('List') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Nothing') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -86,7 +86,7 @@ JetFile: List.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -98,12 +98,12 @@ JetFile: List.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('List') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -113,12 +113,12 @@ JetFile: List.jet INITIALIZER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('List') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') VALUE_ARGUMENT_LIST @@ -149,7 +149,7 @@ JetFile: List.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR @@ -173,7 +173,7 @@ JetFile: List.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR @@ -212,7 +212,7 @@ JetFile: List.jet PsiElement(new)('new') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IIterator') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') diff --git a/idea/testData/psi/examples/io/IOSamples.txt b/idea/testData/psi/examples/io/IOSamples.txt index 4076467ba30..0c4a21b00e9 100644 --- a/idea/testData/psi/examples/io/IOSamples.txt +++ b/idea/testData/psi/examples/io/IOSamples.txt @@ -33,14 +33,14 @@ JetFile: IOSamples.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') @@ -87,9 +87,9 @@ JetFile: IOSamples.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE - USER_TYPE - USER_TYPE + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('java') PsiElement(DOT)('.') PsiElement(IDENTIFIER)('io') @@ -102,7 +102,7 @@ JetFile: IOSamples.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ICloseable') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -128,12 +128,12 @@ JetFile: IOSamples.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IIterable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(COMMA)(',') @@ -144,12 +144,12 @@ JetFile: IOSamples.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IAdder') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -200,19 +200,19 @@ JetFile: IOSamples.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IIterator') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Byte') PsiElement(GT)('>') PsiElement(COMMA)(',') PsiWhiteSpace(' ') DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('JavaCloseableWrapper') PsiWhiteSpace(' ') CLASS_BODY @@ -229,7 +229,7 @@ JetFile: IOSamples.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('InputStream') PsiWhiteSpace('\n ') PROPERTY @@ -243,7 +243,7 @@ JetFile: IOSamples.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace('\n ') PROPERTY @@ -269,7 +269,7 @@ JetFile: IOSamples.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('File') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -278,7 +278,7 @@ JetFile: IOSamples.jet INITIALIZER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('JavaCloseableWrapper') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -363,7 +363,7 @@ JetFile: IOSamples.jet PsiElement(as)('as') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Byte') PsiWhiteSpace('\n ') PsiElement(RBRACE)('}') @@ -479,19 +479,19 @@ JetFile: IOSamples.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IAdder') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Byte') PsiElement(GT)('>') PsiElement(COMMA)(',') PsiWhiteSpace(' ') DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('JavaCloseableWrapper') PsiWhiteSpace(' ') CLASS_BODY @@ -508,7 +508,7 @@ JetFile: IOSamples.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('OutputStream') PsiWhiteSpace('\n\n ') CONSTRUCTOR @@ -521,7 +521,7 @@ JetFile: IOSamples.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('File') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -530,7 +530,7 @@ JetFile: IOSamples.jet INITIALIZER_LIST DELEGATOR_SUPER_CALL TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('JavaCloseableWrapper') VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') @@ -577,7 +577,7 @@ JetFile: IOSamples.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Byte') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -625,7 +625,7 @@ JetFile: IOSamples.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('File') PsiWhiteSpace(' ') PsiComment(EOL_COMMENT)('//= ...') @@ -638,7 +638,7 @@ JetFile: IOSamples.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('File') PsiWhiteSpace(' ') PsiComment(EOL_COMMENT)('//= ...') diff --git a/idea/testData/psi/examples/priorityqueues/BinaryHeap.txt b/idea/testData/psi/examples/priorityqueues/BinaryHeap.txt index 0029bd8936e..c83071fee18 100644 --- a/idea/testData/psi/examples/priorityqueues/BinaryHeap.txt +++ b/idea/testData/psi/examples/priorityqueues/BinaryHeap.txt @@ -15,12 +15,12 @@ JetFile: BinaryHeap.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IPriorityQueue') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -38,12 +38,12 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableList') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace('\n ') @@ -58,12 +58,12 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Comparison') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace('\n\n ') @@ -77,12 +77,12 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IIterable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(COMMA)(',') @@ -93,12 +93,12 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Comparison') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -110,7 +110,7 @@ JetFile: BinaryHeap.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -214,12 +214,12 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Comparison') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -291,19 +291,19 @@ JetFile: BinaryHeap.jet VALUE_ARGUMENT_LIST PsiElement(LPAR)('(') VALUE_ARGUMENT - BINARY_WITH_TYPE + BINARY_WITH_PATTERN REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(is)('is') PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE + TYPE_PATTERN + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IComparable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -324,7 +324,7 @@ JetFile: BinaryHeap.jet TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace('\n ') @@ -346,7 +346,7 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') BLOCK @@ -446,7 +446,7 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -500,7 +500,7 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -725,7 +725,7 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -870,7 +870,7 @@ JetFile: BinaryHeap.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') CLASS_BODY @@ -884,7 +884,7 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR @@ -920,7 +920,7 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR @@ -953,7 +953,7 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR @@ -986,7 +986,7 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -1047,7 +1047,7 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR @@ -1101,7 +1101,7 @@ JetFile: BinaryHeap.jet PsiElement(for)('for') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace(' ') CLASS_BODY @@ -1112,8 +1112,9 @@ JetFile: BinaryHeap.jet ATTRIBUTE_ANNOTATION PsiElement(LBRACKET)('[') ATTRIBUTE - USER_TYPE - PsiElement(IDENTIFIER)('operator') + TYPE_REFERENCE + REFERENCE_EXPRESSION + PsiElement(IDENTIFIER)('operator') PsiElement(RBRACKET)(']') PsiWhiteSpace(' ') PsiElement(fun)('fun') @@ -1129,14 +1130,14 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -1164,12 +1165,12 @@ JetFile: BinaryHeap.jet PsiElement(fun)('fun') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IMutableList') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(DOT)('.') @@ -1184,7 +1185,7 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -1194,7 +1195,7 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RPAR)(')') PsiWhiteSpace(' ') @@ -1259,12 +1260,12 @@ JetFile: BinaryHeap.jet PsiElement(val)('val') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IList') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(DOT)('.') @@ -1273,7 +1274,7 @@ JetFile: BinaryHeap.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace('\n ') PROPERTY_ACCESSOR diff --git a/idea/testData/psi/examples/priorityqueues/IPriorityQueue.txt b/idea/testData/psi/examples/priorityqueues/IPriorityQueue.txt index bbeb7c42334..32e712cc2b2 100644 --- a/idea/testData/psi/examples/priorityqueues/IPriorityQueue.txt +++ b/idea/testData/psi/examples/priorityqueues/IPriorityQueue.txt @@ -29,7 +29,7 @@ JetFile: IPriorityQueue.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiWhiteSpace('\n ') FUN @@ -46,7 +46,7 @@ JetFile: IPriorityQueue.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace('\n ') @@ -58,7 +58,7 @@ JetFile: IPriorityQueue.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Boolean') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/idea/testData/psi/examples/priorityqueues/PriorityQueueAsPushPop.txt b/idea/testData/psi/examples/priorityqueues/PriorityQueueAsPushPop.txt index 672eae94950..ff709e64b65 100644 --- a/idea/testData/psi/examples/priorityqueues/PriorityQueueAsPushPop.txt +++ b/idea/testData/psi/examples/priorityqueues/PriorityQueueAsPushPop.txt @@ -19,12 +19,12 @@ JetFile: PriorityQueueAsPushPop.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IPriorityQueue') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -34,12 +34,12 @@ JetFile: PriorityQueueAsPushPop.jet DELEGATION_SPECIFIER_LIST DELEGATOR_SUPER_CLASS TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IPushPop') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') @@ -89,7 +89,7 @@ JetFile: PriorityQueueAsPushPop.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') diff --git a/idea/testData/psi/examples/util/Comparison.txt b/idea/testData/psi/examples/util/Comparison.txt index 9ec15a0606c..cbc26efab4c 100644 --- a/idea/testData/psi/examples/util/Comparison.txt +++ b/idea/testData/psi/examples/util/Comparison.txt @@ -21,19 +21,19 @@ JetFile: Comparison.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiElement(RBRACE)('}') PsiWhiteSpace('\n\n') @@ -52,12 +52,12 @@ JetFile: Comparison.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('IComparable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(GT)('>') @@ -69,7 +69,7 @@ JetFile: Comparison.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -79,14 +79,14 @@ JetFile: Comparison.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -119,7 +119,7 @@ JetFile: Comparison.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Object') PsiElement(COMMA)(',') PsiWhiteSpace(' ') @@ -129,14 +129,14 @@ JetFile: Comparison.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Object') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace(' ') PsiElement(EQ)('=') @@ -152,12 +152,12 @@ JetFile: Comparison.jet PsiElement(as)('as') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Comparable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Object') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -174,12 +174,12 @@ JetFile: Comparison.jet PsiElement(as)('as') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Comparable') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Object') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -237,19 +237,19 @@ JetFile: Comparison.jet VALUE_PARAMETER_LIST PsiElement(LPAR)('(') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(COMMA)(',') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('ComparisonResult') PsiElement(RBRACE)('}') PsiWhiteSpace('\n\n') @@ -270,12 +270,12 @@ JetFile: Comparison.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Comparison') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiElement(RPAR)(')') @@ -283,12 +283,12 @@ JetFile: Comparison.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('MatchableComparison') TYPE_ARGUMENT_LIST PsiElement(LT)('<') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(GT)('>') PsiWhiteSpace(' ') diff --git a/idea/testData/psi/examples/util/IComparable.txt b/idea/testData/psi/examples/util/IComparable.txt index d9b26cc9353..78f9a5e3a12 100644 --- a/idea/testData/psi/examples/util/IComparable.txt +++ b/idea/testData/psi/examples/util/IComparable.txt @@ -33,14 +33,14 @@ JetFile: IComparable.jet PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('T') PsiElement(RPAR)(')') PsiWhiteSpace(' ') PsiElement(COLON)(':') PsiWhiteSpace(' ') TYPE_REFERENCE - USER_TYPE + REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('Int') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') \ No newline at end of file