forked from PuqiAR/Fig-TreeWalker
[Feat] 可变参数 variadic! 目前函数若使用可变参数,参数只能为1个
语法 func (arg...) 获取到的类型为 List
若要判断类型,使用标准库 std.value.type
[Feat] 标准库 std.io std.value 实现,提供print,read等函数
详见 Library/std 实现
[Impl] 分离 builtin value 和 function注册
This commit is contained in:
@@ -72,7 +72,7 @@ namespace Fig
|
||||
FString(u8"<Global>"));
|
||||
}
|
||||
|
||||
void RegisterBuiltins()
|
||||
void RegisterBuiltins() // only function
|
||||
{
|
||||
assert(global != nullptr);
|
||||
|
||||
@@ -87,6 +87,11 @@ namespace Fig
|
||||
std::make_shared<Object>(f)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
void RegisterBuiltinsValue()
|
||||
{
|
||||
assert(global != nullptr);
|
||||
|
||||
for (auto &[name, val] : Builtins::builtinValues)
|
||||
{
|
||||
@@ -94,8 +99,7 @@ namespace Fig
|
||||
name,
|
||||
val->getTypeInfo(),
|
||||
AccessModifier::Const,
|
||||
val
|
||||
);
|
||||
val);
|
||||
}
|
||||
}
|
||||
/* Left-value eval*/
|
||||
|
||||
Reference in New Issue
Block a user