rename block types
This commit is contained in:
parent
08f04a8521
commit
2602a6499d
@ -76,9 +76,9 @@ B glyph_c1(B t, B x) {
|
||||
if (ty==t_md1BI) { B r = fromUTF8l(pm1_repr(c(Md1,x)->extra)); dec(x); return r; }
|
||||
if (ty==t_md2BI) { B r = fromUTF8l(pm2_repr(c(Md2,x)->extra)); dec(x); return r; }
|
||||
if (ty==t_nfn) { B r = nfn_name(x); dec(x); return r; }
|
||||
if (ty==t_fun_block) { dec(x); return m_str8l("(function block)"); }
|
||||
if (ty==t_md1_block) { dec(x); return m_str8l("(1-modifier block)"); }
|
||||
if (ty==t_md2_block) { dec(x); return m_str8l("(2-modifier block)"); }
|
||||
if (ty==t_funBl) { dec(x); return m_str8l("(function block)"); }
|
||||
if (ty==t_md1Bl) { dec(x); return m_str8l("(1-modifier block)"); }
|
||||
if (ty==t_md2Bl) { dec(x); return m_str8l("(2-modifier block)"); }
|
||||
if (ty==t_ns) return nsFmt(x);
|
||||
return m_str32(U"(•Glyph: given object with unexpected type)");
|
||||
}
|
||||
|
||||
6
src/h.h
6
src/h.h
@ -184,9 +184,9 @@ typedef union B {
|
||||
|
||||
#define FOR_TYPE(F) \
|
||||
/* 0*/ F(empty) \
|
||||
/* 1*/ F(funBI) F(fun_block) \
|
||||
/* 3*/ F(md1BI) F(md1_block) \
|
||||
/* 5*/ F(md2BI) F(md2_block) \
|
||||
/* 1*/ F(funBI) F(funBl) \
|
||||
/* 3*/ F(md1BI) F(md1Bl) \
|
||||
/* 5*/ F(md2BI) F(md2Bl) \
|
||||
/* 7*/ F(shape) /* doesn't get F(visited) shouldn't be unallocated by gc */ \
|
||||
\
|
||||
/* 8*/ F(fork) F(atop) \
|
||||
|
||||
34
src/vm.c
34
src/vm.c
@ -861,7 +861,7 @@ B md2Bl_d(B m, B f, B g) { Md2Block* c = c(Md2Block,m); Block* bl=c(Md2Block, m)
|
||||
|
||||
B m_funBlock(Block* bl, Scope* psc) { // doesn't consume anything
|
||||
if (bl->imm) return execBlock(bl, bl->bodies[0], psc, 0, NULL);
|
||||
FunBlock* r = mm_alloc(sizeof(FunBlock), t_fun_block);
|
||||
FunBlock* r = mm_alloc(sizeof(FunBlock), t_funBl);
|
||||
r->bl = ptr_inc(bl);
|
||||
r->sc = ptr_inc(psc);
|
||||
r->c1 = funBl_c1;
|
||||
@ -869,7 +869,7 @@ B m_funBlock(Block* bl, Scope* psc) { // doesn't consume anything
|
||||
return tag(r,FUN_TAG);
|
||||
}
|
||||
B m_md1Block(Block* bl, Scope* psc) {
|
||||
Md1Block* r = mm_alloc(sizeof(Md1Block), t_md1_block);
|
||||
Md1Block* r = mm_alloc(sizeof(Md1Block), t_md1Bl);
|
||||
r->bl = ptr_inc(bl);
|
||||
r->sc = ptr_inc(psc);
|
||||
r->c1 = md1Bl_c1;
|
||||
@ -877,7 +877,7 @@ B m_md1Block(Block* bl, Scope* psc) {
|
||||
return tag(r,MD1_TAG);
|
||||
}
|
||||
B m_md2Block(Block* bl, Scope* psc) {
|
||||
Md2Block* r = mm_alloc(sizeof(Md2Block), t_md2_block);
|
||||
Md2Block* r = mm_alloc(sizeof(Md2Block), t_md2Bl);
|
||||
r->bl = ptr_inc(bl);
|
||||
r->sc = ptr_inc(psc);
|
||||
r->c1 = md2Bl_c1;
|
||||
@ -989,21 +989,21 @@ void print_vmStack() {
|
||||
|
||||
|
||||
void comp_init() {
|
||||
TIi(t_comp ,freeO) = comp_freeO; TIi(t_comp ,freeF) = comp_freeF; TIi(t_comp ,visit) = comp_visit; TIi(t_comp ,print) = comp_print;
|
||||
TIi(t_body ,freeO) = body_freeO; TIi(t_body ,freeF) = body_freeF; TIi(t_body ,visit) = body_visit; TIi(t_body ,print) = body_print;
|
||||
TIi(t_block ,freeO) = block_freeO; TIi(t_block ,freeF) = block_freeF; TIi(t_block ,visit) = block_visit; TIi(t_block ,print) = block_print;
|
||||
TIi(t_scope ,freeO) = scope_freeO; TIi(t_scope ,freeF) = scope_freeF; TIi(t_scope ,visit) = scope_visit; TIi(t_scope ,print) = scope_print;
|
||||
TIi(t_scopeExt ,freeO) = scExt_freeO; TIi(t_scopeExt ,freeF) = scExt_freeF; TIi(t_scopeExt ,visit) = scExt_visit; TIi(t_scopeExt ,print) = scExt_print;
|
||||
TIi(t_blBlocks ,freeO) = bBlks_freeO; TIi(t_blBlocks ,freeF) = bBlks_freeF; TIi(t_blBlocks ,visit) = bBlks_visit; TIi(t_blBlocks ,print) = bBlks_print;
|
||||
TIi(t_fldAlias ,freeO) = alias_freeO; TIi(t_fldAlias ,freeF) = alias_freeF; TIi(t_fldAlias ,visit) = alias_visit; TIi(t_fldAlias ,print) = alias_print;
|
||||
TIi(t_vfyObj ,freeO) = vfymO_freeO; TIi(t_vfyObj ,freeF) = vfymO_freeF; TIi(t_vfyObj ,visit) = vfymO_visit; TIi(t_vfyObj ,print) = vfymO_print;
|
||||
TIi(t_fun_block,freeO) = funBl_freeO; TIi(t_fun_block,freeF) = funBl_freeF; TIi(t_fun_block,visit) = funBl_visit; TIi(t_fun_block,print) = funBl_print; TIi(t_fun_block,decompose) = block_decompose;
|
||||
TIi(t_md1_block,freeO) = md1Bl_freeO; TIi(t_md1_block,freeF) = md1Bl_freeF; TIi(t_md1_block,visit) = md1Bl_visit; TIi(t_md1_block,print) = md1Bl_print; TIi(t_md1_block,decompose) = block_decompose; TIi(t_md1_block,m1_d)=md1Bl_d;
|
||||
TIi(t_md2_block,freeO) = md2Bl_freeO; TIi(t_md2_block,freeF) = md2Bl_freeF; TIi(t_md2_block,visit) = md2Bl_visit; TIi(t_md2_block,print) = md2Bl_print; TIi(t_md2_block,decompose) = block_decompose; TIi(t_md2_block,m2_d)=md2Bl_d;
|
||||
TIi(t_comp ,freeO) = comp_freeO; TIi(t_comp ,freeF) = comp_freeF; TIi(t_comp ,visit) = comp_visit; TIi(t_comp ,print) = comp_print;
|
||||
TIi(t_body ,freeO) = body_freeO; TIi(t_body ,freeF) = body_freeF; TIi(t_body ,visit) = body_visit; TIi(t_body ,print) = body_print;
|
||||
TIi(t_block ,freeO) = block_freeO; TIi(t_block ,freeF) = block_freeF; TIi(t_block ,visit) = block_visit; TIi(t_block ,print) = block_print;
|
||||
TIi(t_scope ,freeO) = scope_freeO; TIi(t_scope ,freeF) = scope_freeF; TIi(t_scope ,visit) = scope_visit; TIi(t_scope ,print) = scope_print;
|
||||
TIi(t_scopeExt ,freeO) = scExt_freeO; TIi(t_scopeExt,freeF) = scExt_freeF; TIi(t_scopeExt,visit) = scExt_visit; TIi(t_scopeExt,print) = scExt_print;
|
||||
TIi(t_blBlocks ,freeO) = bBlks_freeO; TIi(t_blBlocks,freeF) = bBlks_freeF; TIi(t_blBlocks,visit) = bBlks_visit; TIi(t_blBlocks,print) = bBlks_print;
|
||||
TIi(t_fldAlias ,freeO) = alias_freeO; TIi(t_fldAlias,freeF) = alias_freeF; TIi(t_fldAlias,visit) = alias_visit; TIi(t_fldAlias,print) = alias_print;
|
||||
TIi(t_vfyObj ,freeO) = vfymO_freeO; TIi(t_vfyObj ,freeF) = vfymO_freeF; TIi(t_vfyObj ,visit) = vfymO_visit; TIi(t_vfyObj ,print) = vfymO_print;
|
||||
TIi(t_funBl ,freeO) = funBl_freeO; TIi(t_funBl ,freeF) = funBl_freeF; TIi(t_funBl ,visit) = funBl_visit; TIi(t_funBl ,print) = funBl_print; TIi(t_funBl,decompose) = block_decompose;
|
||||
TIi(t_md1Bl ,freeO) = md1Bl_freeO; TIi(t_md1Bl ,freeF) = md1Bl_freeF; TIi(t_md1Bl ,visit) = md1Bl_visit; TIi(t_md1Bl ,print) = md1Bl_print; TIi(t_md1Bl,decompose) = block_decompose; TIi(t_md1Bl,m1_d)=md1Bl_d;
|
||||
TIi(t_md2Bl ,freeO) = md2Bl_freeO; TIi(t_md2Bl ,freeF) = md2Bl_freeF; TIi(t_md2Bl ,visit) = md2Bl_visit; TIi(t_md2Bl ,print) = md2Bl_print; TIi(t_md2Bl,decompose) = block_decompose; TIi(t_md2Bl,m2_d)=md2Bl_d;
|
||||
|
||||
TIi(t_fun_block,fn_im) = funBl_im; TIi(t_md1_block,m1_im) = md1Bl_im; TIi(t_md2_block,m2_im) = md2Bl_im;
|
||||
TIi(t_fun_block,fn_iw) = funBl_iw; TIi(t_md1_block,m1_iw) = md1Bl_iw; TIi(t_md2_block,m2_iw) = md2Bl_iw;
|
||||
TIi(t_fun_block,fn_ix) = funBl_ix; TIi(t_md1_block,m1_ix) = md1Bl_ix; TIi(t_md2_block,m2_ix) = md2Bl_ix;
|
||||
TIi(t_funBl,fn_im) = funBl_im; TIi(t_md1Bl,m1_im) = md1Bl_im; TIi(t_md2Bl,m2_im) = md2Bl_im;
|
||||
TIi(t_funBl,fn_iw) = funBl_iw; TIi(t_md1Bl,m1_iw) = md1Bl_iw; TIi(t_md2Bl,m2_iw) = md2Bl_iw;
|
||||
TIi(t_funBl,fn_ix) = funBl_ix; TIi(t_md1Bl,m1_ix) = md1Bl_ix; TIi(t_md2Bl,m2_ix) = md2Bl_ix;
|
||||
|
||||
#ifndef GS_REALLOC
|
||||
allocStack((void**)&gStack, (void**)&gStackStart, (void**)&gStackEnd, sizeof(B), GS_SIZE);
|
||||
|
||||
6
src/vm.h
6
src/vm.h
@ -247,9 +247,9 @@ FORCE_INLINE void scope_dec(Scope* sc) { // version of ptr_dec for scopes, that
|
||||
B c = sc->vars[i];
|
||||
if (isVal(c) && v(c)->refc==1) {
|
||||
u8 t = v(c)->type;
|
||||
if (t==t_fun_block && c(FunBlock,c)->sc==sc) innerRef++;
|
||||
else if (t==t_md1_block && c(Md1Block,c)->sc==sc) innerRef++;
|
||||
else if (t==t_md2_block && c(Md2Block,c)->sc==sc) innerRef++;
|
||||
if (t==t_funBl && c(FunBlock,c)->sc==sc) innerRef++;
|
||||
else if (t==t_md1Bl && c(Md1Block,c)->sc==sc) innerRef++;
|
||||
else if (t==t_md2Bl && c(Md2Block,c)->sc==sc) innerRef++;
|
||||
}
|
||||
}
|
||||
assert(innerRef <= sc->refc);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user