aboutsummaryrefslogtreecommitdiff
path: root/docs/design/destructors.md
Commit message (Collapse)AuthorAgeFilesLines
* duplicate case labels are an error (b.2.15); unterminated string literal ↵Gravatar zinc 13 days1-1/+1
| | | | reported where it starts (b.2.11); an unreachable droppable cycle drops whole in one collection (6.15.3)
* actor: a declared actor without its own drop gets one that awaits owed ↵Gravatar zinc 14 days1-1/+1
| | | | replies and closes the endpoint; the handler reaches the struct through endpoint.state so the struct isn't shared; spawn hint skips mailbox structs
* rt: gc_drops finalizes a droppable value that reaches itself (a cycle, or a ↵Gravatar zinc 14 days1-1/+2
| | | | drop capturing its own value), one per collection, each once; before, each waited for the other forever; spec 6.15.3, drop_gc_cycle.zc, drop_gc_self_capture.zc, design doc lists what landed
* docs: destructors: the free paths clear the entry in dropfree, right after ↵Gravatar zinc 14 days1-2/+2
| | | | the drop and before the children
* destructors: heap(v), drop(v, f) / v.drop(f) / v.drop = f, struct drop ↵Gravatar zinc 14 days1-1/+9
| | | | methods, collector drops after the sweep (once, resurrection), freed blocks forget their drop, temporaries drop at statement end with a hint, actor send check; o3: no collection inside a region (pending until the outermost exit), no drops set or ended inside o3; spec 3.11.6, 4.10.3-4, 6.15
* docs: destructors: clear drop entry and bits on free; planned reuse testGravatar zinc 14 days1-0/+5
|
* docs: destructors: value and type drops both run, side table storage, ↵Gravatar zinc 14 days1-9/+6
| | | | F_HASDROP/F_DROPPED bits
* docs: revise destructors draft to acorn's rulings (drop on any heap value, ↵Gravatar zinc 14 days1-66/+117
| | | | heap() builtin, gc runs drops)
* docs: draft design for destructors on heap objectsGravatar zinc 14 days1-0/+121