Исправлена опечатка в названии класса

This commit is contained in:
Victor 2015-06-12 21:41:00 +03:00
parent cf98f623b6
commit 40949f3e29
2 changed files with 31 additions and 2 deletions

View File

@ -5,7 +5,7 @@ import com.annimon.ownlang.parser.ast.AssignmentStatement;
import com.annimon.ownlang.parser.ast.BinaryExpression;
import com.annimon.ownlang.parser.ast.BlockStatement;
import com.annimon.ownlang.parser.ast.ConditionalExpression;
import com.annimon.ownlang.parser.ast.VariabletExpression;
import com.annimon.ownlang.parser.ast.VariableExpression;
import com.annimon.ownlang.parser.ast.Expression;
import com.annimon.ownlang.parser.ast.ForStatement;
import com.annimon.ownlang.parser.ast.IfStatement;
@ -239,7 +239,7 @@ public final class Parser {
return new ValueExpression(Long.parseLong(current.getText(), 16));
}
if (match(TokenType.WORD)) {
return new VariabletExpression(current.getText());
return new VariableExpression(current.getText());
}
if (match(TokenType.TEXT)) {
return new ValueExpression(current.getText());

View File

@ -0,0 +1,29 @@
package com.annimon.ownlang.parser.ast;
import com.annimon.ownlang.lib.Value;
import com.annimon.ownlang.lib.Variables;
/**
*
* @author aNNiMON
*/
public final class VariableExpression implements Expression {
private final String name;
public VariableExpression(String name) {
this.name = name;
}
@Override
public Value eval() {
if (!Variables.isExists(name)) throw new RuntimeException("Constant does not exists");
return Variables.get(name);
}
@Override
public String toString() {
// return String.format("%s [%f]", name, Constants.get(name));
return String.format("%s", name);
}
}