KT-667 UNSUPPORTED TOKEN TYPE: TILDE

This commit is contained in:
Sergey Ignatov
2011-11-29 16:10:03 +04:00
parent acc9d70dab
commit 69cad97689
3 changed files with 13 additions and 4 deletions
@@ -274,10 +274,15 @@ public class ExpressionVisitor extends StatementVisitor {
@Override
public void visitPrefixExpression(PsiPrefixExpression expression) {
super.visitPrefixExpression(expression);
myResult = new PrefixOperator(
getOperatorString(expression.getOperationSign().getTokenType()),
expressionToExpression(expression.getOperand())
);
if (expression.getOperationTokenType() == JavaTokenType.TILDE)
myResult = new DummyMethodCallExpression(
new ParenthesizedExpression(expressionToExpression(expression.getOperand())), "inv", Expression.EMPTY_EXPRESSION
);
else
myResult = new PrefixOperator(
getOperatorString(expression.getOperationSign().getTokenType()),
expressionToExpression(expression.getOperand())
);
}
@Override
@@ -0,0 +1,2 @@
int i = ~10;
int j = ~(i * 100);
@@ -0,0 +1,2 @@
var i : Int = (10).inv()
var j : Int = (((i * 100))).inv()