mirror of
https://github.com/justinian/jsix.git
synced 2025-12-11 08:54:31 -08:00
[project] Generate syscalls from new interface DSL
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
This commit is contained in:
11
src/kernel/syscalls.inc.cog
Normal file
11
src/kernel/syscalls.inc.cog
Normal file
@@ -0,0 +1,11 @@
|
||||
; 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]]]
|
||||
|
||||
Reference in New Issue
Block a user