mirror of
https://github.com/kanaka/mal.git
synced 2024-09-11 21:57:38 +03:00
- Reorder README to have implementation list after "learning tool" bullet. - This also moves tests/ and libs/ into impls. It would be preferrable to have these directories at the top level. However, this causes difficulties with the wasm implementations which need pre-open directories and have trouble with paths starting with "../../". So in lieu of that, symlink those directories to the top-level. - Move the run_argv_test.sh script into the tests directory for general hygiene.
36 lines
686 B
Plaintext
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;
|
|
}
|
|
}
|