|
|
namespace Smoll.Ex4.Commands {
|
|
interface IScriptable {
|
|
|
|
}
|
|
|
|
class Number : IScriptable {
|
|
public double value;
|
|
|
|
public Number(double value) {
|
|
this.value = value;
|
|
}
|
|
|
|
public override string ToString()
|
|
{
|
|
return value.ToString();
|
|
}
|
|
}
|
|
|
|
class Complex : IScriptable {
|
|
public Complex value;
|
|
|
|
public override string ToString()
|
|
{
|
|
return value.ToString();
|
|
}
|
|
}
|
|
|
|
class Atom : IScriptable {
|
|
public string value;
|
|
|
|
public Atom(string value) {
|
|
this.value = value;
|
|
}
|
|
|
|
public override string ToString()
|
|
{
|
|
return "[[" + value.ToString() + "]]";
|
|
}
|
|
}
|
|
|
|
class String : IScriptable {
|
|
public string value;
|
|
|
|
public String(string value) {
|
|
this.value = value;
|
|
}
|
|
|
|
public override string ToString()
|
|
{
|
|
return value;
|
|
}
|
|
}
|
|
}
|