feat(natives): teach the compiler the Buffer natives #301
Loading…
Reference in a new issue
No description provided.
Delete branch "loop/299-buffer-natives"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #299
Commit 1 of 2 for #54 (CLAUDE.md "Seed and breaking changes").
natives.trb:listEntriestakesisBuffer;Buffer.*rows forwithCapacity(container,ListStorage),length,get,append,set,insert,removeAt,replaceBetween,reverse,clearon the sametorb_list_*symbols and ownership lists asArrayList. NoBuffer.sliceBetween, noBuffer.compact.instantiate.trb:addPrimitive ... "Buffer", PrimitiveKind.Runtime(RuntimeKind.ListStorage)- inert until #54 declaresBufferinstd/core(the prelude does not export it yet).runtime/include/torb_natives.h: only the comment lines above the nine sharedtorb_list_*prototypes now listBuffer.<member>(the renderer prints the sorted user names). Prototypes, symbol count andruntime/machine_natives.care unchanged (thunks are keyed by symbol), sonatives_header_test.cis unaffected.natives.test.trbchecks everyBuffermember against itsArrayListtwin (ready, same symbol, prototype, owned/addressed parameters) and the absence ofsliceBetween/compact; the header assertion fortorb_list_addnow namesBuffer.append.bytecode.test.trbchecks thatnativeSymbols()equals the symbol set without theBufferrows.Nothing under
std/,seed/,tests/conformance/. Not run locally (no toolchain in the loop sandbox); tier A on this PR is the check. After merge: publish the seed (Actions ->seed), not part of this PR.2b2de452ddc260d4ed25c260d4ed25de7689ba7cBuffernatives (commit 1 of 2 for #54) #299de7689ba7c589d062e62Approved. Checklist:
Buffernatives (commit 1 of 2 for #54) #299