33 lines
3.4 KiB
Plaintext
33 lines
3.4 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_validate_taskitem ---
|
|
root ::= "{" ws "\"tool\"" ws ":" ws "\"whetstone_validate_taskitem\"" ws "," ws "\"arguments\"" ws ":" ws whetstone-validate-taskitem-args-obj-27 ws "}"
|
|
|
|
whetstone-validate-taskitem-args-obj-27 ::= "{" ws whetstone-validate-taskitem-args-taskitems-pair-24 (ws "," ws whetstone-validate-taskitem-args-opt-28)* ws "}"
|
|
whetstone-validate-taskitem-args-opt-28 ::= whetstone-validate-taskitem-args-workspace-pair-26
|
|
whetstone-validate-taskitem-args-taskitems-1-arr-23 ::= "[" ws (whetstone-validate-taskitem-args-taskitems-1-item-2-obj-21 (ws "," ws whetstone-validate-taskitem-args-taskitems-1-item-2-obj-21)*)? ws "]"
|
|
whetstone-validate-taskitem-args-taskitems-1-item-2-confidence-pair-4 ::= "\"confidence\"" ws ":" ws integer
|
|
whetstone-validate-taskitem-args-taskitems-1-item-2-dependency_task_ids-5-arr-7 ::= "[" ws (string (ws "," ws string)*)? ws "]"
|
|
whetstone-validate-taskitem-args-taskitems-1-item-2-dependency_task_ids-pair-8 ::= "\"dependency_task_ids\"" ws ":" ws whetstone-validate-taskitem-args-taskitems-1-item-2-dependency_task_ids-5-arr-7
|
|
whetstone-validate-taskitem-args-taskitems-1-item-2-obj-21 ::= "{" ws whetstone-validate-taskitem-args-taskitems-1-item-2-task_id-pair-18 (ws "," ws whetstone-validate-taskitem-args-taskitems-1-item-2-opt-22)* ws "}"
|
|
whetstone-validate-taskitem-args-taskitems-1-item-2-opt-22 ::= whetstone-validate-taskitem-args-taskitems-1-item-2-confidence-pair-4 | whetstone-validate-taskitem-args-taskitems-1-item-2-dependency_task_ids-pair-8 | whetstone-validate-taskitem-args-taskitems-1-item-2-prerequisite_ops-pair-12 | whetstone-validate-taskitem-args-taskitems-1-item-2-reasons-pair-16 | whetstone-validate-taskitem-args-taskitems-1-item-2-title-pair-20
|
|
whetstone-validate-taskitem-args-taskitems-1-item-2-prerequisite_ops-9-arr-11 ::= "[" ws (string (ws "," ws string)*)? ws "]"
|
|
whetstone-validate-taskitem-args-taskitems-1-item-2-prerequisite_ops-pair-12 ::= "\"prerequisite_ops\"" ws ":" ws whetstone-validate-taskitem-args-taskitems-1-item-2-prerequisite_ops-9-arr-11
|
|
whetstone-validate-taskitem-args-taskitems-1-item-2-reasons-13-arr-15 ::= "[" ws (string (ws "," ws string)*)? ws "]"
|
|
whetstone-validate-taskitem-args-taskitems-1-item-2-reasons-pair-16 ::= "\"reasons\"" ws ":" ws whetstone-validate-taskitem-args-taskitems-1-item-2-reasons-13-arr-15
|
|
whetstone-validate-taskitem-args-taskitems-1-item-2-task_id-pair-18 ::= "\"task_id\"" ws ":" ws string
|
|
whetstone-validate-taskitem-args-taskitems-1-item-2-title-pair-20 ::= "\"title\"" ws ":" ws string
|
|
whetstone-validate-taskitem-args-taskitems-pair-24 ::= "\"taskitems\"" ws ":" ws whetstone-validate-taskitem-args-taskitems-1-arr-23
|
|
whetstone-validate-taskitem-args-workspace-pair-26 ::= "\"workspace\"" ws ":" ws string
|