package net.minecraft.src.weasel;

import net.minecraft.src.weasel.exception.WeaselRuntimeException;
import net.minecraft.src.weasel.obj.WeaselObject;

/**
 * Object which provides Weasel variables.
 * 
 * @author MightyPork
 *
 */
public interface IVariableContainer {

	/**
	 * Set variable value. Accepts both java types and WeaselObjects, but if the types don't match, throws an exception.
	 * @param name
	 * @param value
	 * @throws WeaselRuntimeException when trying to store unsupported object into a variable.
	 */
	public void setVariable(String name, Object value);
	

	/**
	 * Get variable for name, both weasel and natives
	 * @param name variable name
	 * @return variable value
	 */
	public WeaselObject getVariable(String name);

}
