mirror of
https://github.com/justinian/jsix.git
synced 2025-12-10 00:14:32 -08:00
This change adds a new interface DSL for specifying objects (with methods) and interfaces (that expose objects, and optionally have their own methods). Significant changes: - Add the new scripts/definitions Python module to parse the DSL - Add the new definitions directory containing DSL definition files - Use cog to generate syscall-related code in kernel and libj6 - Unify ordering of pointer + length pairs in interfaces
12 lines
260 B
Plaintext
12 lines
260 B
Plaintext
; vim: ft=asm
|
|
; [[[cog code generation
|
|
; from definitions.context import Context
|
|
;
|
|
; ctx = Context(definitions_path)
|
|
; ctx.parse("syscalls.def")
|
|
; syscalls = ctx.interfaces['syscalls']
|
|
; cog.outl(f"NUM_SYSCALLS equ {len(syscalls.methods)}")
|
|
; ]]]
|
|
; [[[end]]]
|
|
|