1
1
mirror of https://github.com/kanaka/mal.git synced 2024-09-19 17:47:53 +03:00
mal/chuck/func.ck
Vasilij Schneidermann beb3531141 Implement step A
2016-08-06 21:25:56 +02:00

36 lines
686 B
Plaintext

public class Func extends MalObject
{
"func" => type;
Env env;
string args[];
MalObject ast;
int isMacro;
fun void init(Env env, string args[], MalObject ast)
{
env @=> this.env;
args @=> this.args;
ast @=> this.ast;
}
fun static Func create(Env env, string args[], MalObject ast)
{
Func func;
func.init(env, args, ast);
return func;
}
fun MalObject clone()
{
Func value;
this.type => value.type;
this.env @=> value.env;
this.args @=> value.args;
this.ast @=> value.ast;
this.isMacro @=> value.isMacro;
return value;
}
}