org.snapscript.tree.define.ModuleName Maven / Gradle / Ivy
package org.snapscript.tree.define;
import org.snapscript.core.Evaluation;
import org.snapscript.core.scope.Scope;
import org.snapscript.core.variable.Value;
import org.snapscript.tree.literal.TextLiteral;
public class ModuleName extends Evaluation {
private final TextLiteral literal;
public ModuleName(TextLiteral literal) {
this.literal = literal;
}
@Override
public Value evaluate(Scope scope, Value left) throws Exception{
Value value = literal.evaluate(scope, left);
String name = value.getValue();
return Value.getTransient(name);
}
}