xo-interpreter2 stack: modularize nth() primitive setup/install
This commit is contained in:
parent
481d0e73e3
commit
a3aa582eb9
19 changed files with 216 additions and 49 deletions
|
|
@ -41,19 +41,17 @@ namespace xo {
|
|||
DGlobalSymtab * global_symtab,
|
||||
InstallFlags pm_install_flags)
|
||||
{
|
||||
scope log(XO_DEBUG(true));
|
||||
|
||||
DGlobalEnv * env = DGlobalEnv::_make(mm,
|
||||
global_symtab);
|
||||
|
||||
InstallSink sink = ([env, mm, &stringtable]
|
||||
InstallSink sink = ([env, mm, &stringtable, &log]
|
||||
(std::string_view name,
|
||||
TypeDescr fn_td,
|
||||
obj<AProcedure> pm,
|
||||
InstallFlags flags)
|
||||
{
|
||||
scope log(XO_DEBUG(false));
|
||||
|
||||
log && log(xtag("name", name));
|
||||
|
||||
(void)flags;
|
||||
|
||||
obj<AGCObject> pm_gco = pm.to_facet<AGCObject>();
|
||||
|
|
@ -61,6 +59,8 @@ namespace xo {
|
|||
const DUniqueString * sym
|
||||
= stringtable.intern(name);
|
||||
|
||||
log && log("upsert", xtag("sym", std::string_view(*sym)));
|
||||
|
||||
env->_upsert_value(mm,
|
||||
sym,
|
||||
fn_td,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue