package hu.swankey.ammo.common.script.statements;

import hu.swankey.ammo.common.yggdrasil.basics.YObject;

import java.util.Map;

public class Constant extends Variable {
	
	private final YObject value;

	public Constant(YObject value) {
		
		if (value == null)
			throw new NullPointerException("'value' cannot be null");
		
		this.value = value;
	}

//	@Override
//	public YClass getYClass(Map<String, YObject> envrionment, YObject thisElement) {
//		return value.getYClass();
//	}

	@Override
	public YObject evaulate(Map<String, YObject> envrionment, YObject thisElement) {
		return value;
	}

//	@Override
//	public boolean isValid(Map<String, YObject> envrionment, YObject thisElement) {
//		return true;
//	}
	
	@Override
	public String toString(){
		return value.toString();
	}

}
