Files
whetstone_DSL/tools/mcp/grammars/whetstone_set_environment.gbnf

28 lines
2.5 KiB
Plaintext

# ---------------------------------------------------------------------------
# JSON primitives
# ---------------------------------------------------------------------------
ws ::= [ \t\n\r]*
string ::= "\"" ([^"\\\x7F\x00-\x1F] | "\\" (["\\/bfnrt] | "u" [0-9a-fA-F] [0-9a-fA-F] [0-9a-fA-F] [0-9a-fA-F]))* "\""
number ::= "-"? ([0-9] | [1-9] [0-9]*) ("." [0-9]+)? ([eE] [-+]? [0-9]+)?
integer ::= "-"? ([0-9] | [1-9] [0-9]*)
boolean ::= "true" | "false"
null ::= "null"
any-value ::= string | number | boolean | null | any-object | any-array
any-object ::= "{" ws (string ws ":" ws any-value (ws "," ws string ws ":" ws any-value)*)? ws "}"
any-array ::= "[" ws (any-value (ws "," ws any-value)*)? ws "]"
# --- whetstone_set_environment ---
root ::= "{" ws "\"tool\"" ws ":" ws "\"whetstone_set_environment\"" ws "," ws "\"arguments\"" ws ":" ws whetstone-set-environment-args-obj-19 ws "}"
whetstone-set-environment-args-capabilities-1-arr-3 ::= "[" ws (string (ws "," ws string)*)? ws "]"
whetstone-set-environment-args-capabilities-pair-4 ::= "\"capabilities\"" ws ":" ws whetstone-set-environment-args-capabilities-1-arr-3
whetstone-set-environment-args-constraints-5-arr-7 ::= "[" ws (string (ws "," ws string)*)? ws "]"
whetstone-set-environment-args-constraints-pair-8 ::= "\"constraints\"" ws ":" ws whetstone-set-environment-args-constraints-5-arr-7
whetstone-set-environment-args-envId-pair-10 ::= "\"envId\"" ws ":" ws string
whetstone-set-environment-args-exceptions-pair-12 ::= "\"exceptions\"" ws ":" ws "\"unwind\"" | "\"checked\"" | "\"typed\"" | "\"untyped\""
whetstone-set-environment-args-ffi-pair-14 ::= "\"ffi\"" ws ":" ws "\"c_abi\"" | "\"dynamic_linking\"" | "\"none\""
whetstone-set-environment-args-memory-pair-16 ::= "\"memory\"" ws ":" ws "\"manual\"" | "\"raii\"" | "\"refcount\"" | "\"tracing_gc\"" | "\"region\""
whetstone-set-environment-args-obj-19 ::= "{" ws whetstone-set-environment-args-envId-pair-10 (ws "," ws whetstone-set-environment-args-opt-20)* ws "}"
whetstone-set-environment-args-opt-20 ::= whetstone-set-environment-args-capabilities-pair-4 | whetstone-set-environment-args-constraints-pair-8 | whetstone-set-environment-args-exceptions-pair-12 | whetstone-set-environment-args-ffi-pair-14 | whetstone-set-environment-args-memory-pair-16 | whetstone-set-environment-args-scheduler-pair-18
whetstone-set-environment-args-scheduler-pair-18 ::= "\"scheduler\"" ws ":" ws "\"event_loop\"" | "\"threads\"" | "\"fibers\"" | "\"coroutines\"" | "\"single_thread\""