Examples fixed, some bugs found

This commit is contained in:
Andrey Breslav
2010-12-30 17:01:13 +03:00
parent df5bba0a00
commit f3f4a361d0
17 changed files with 57 additions and 48 deletions
@@ -40,6 +40,7 @@ public class JetExpressionParsing extends AbstractJetParsing {
}
},
// TODO: wrong priority for call: Random.nextInt().isOdd
POSTFIX(PLUSPLUS, MINUSMINUS), // typeArguments? valueArguments : arrayAccess
PREFIX(MINUS, PLUS, MINUSMINUS, PLUSPLUS, EXCL) { // attributes
@@ -61,11 +62,13 @@ public class JetExpressionParsing extends AbstractJetParsing {
RANGE(JetTokens.RANGE),
SIMPLE_NAME(IDENTIFIER),
ELVIS(JetTokens.ELVIS),
// TODO: RHS (type parameters)
NAMED_INFIX_OR_TYPE(IN_KEYWORD, NOT_IN, IS_KEYWORD, NOT_IS, AS_KEYWORD, COLON),
COMPARISON(LT, GT, LTEQ, GTEQ),
EQUALITY(EQEQ, EXCLEQ, EQEQEQ, EXCLEQEQEQ),
CONJUNCTION(ANDAND),
DISJUNCTION(OROR),
// TODO: RHS
MATCH(MATCH_KEYWORD),
// TODO: don't build a binary tree, build a tuple
ARROW(JetTokens.ARROW),
@@ -170,6 +173,7 @@ public class JetExpressionParsing extends AbstractJetParsing {
*/
private void parsePostfixExpression() {
// System.out.println("post at " + tt());
// TODO: call with a closure outside parentheses
PsiBuilder.Marker expression = mark();
parseBinaryExpression(Precedence.MEMBER_ACCESS);
@@ -702,6 +702,7 @@ public class JetParsing extends AbstractJetParsing {
*/
public JetNodeType parseProperty() {
// TODO: var foo : Int { get; private set }
// TODO: accessors for local variables
assert at(VAL_KEYWORD) || at(VAR_KEYWORD);
@@ -1167,6 +1168,7 @@ public class JetParsing extends AbstractJetParsing {
* ;
*/
public void parseTypeRef() {
// TODO: Self type
PsiBuilder.Marker type = mark();
parseAttributeList();
@@ -1341,6 +1343,8 @@ public class JetParsing extends AbstractJetParsing {
* ;
*/
public void parseValueParameterList(boolean isFunctionTypeContents, TokenSet recoverySet) {
// TODO: val a, b, c : Int
PsiBuilder.Marker parameters = mark();
myBuilder.disableEols();