# --------------------------------------------------------------------------- # 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_export_training_data --- root ::= "{" ws "\"tool\"" ws ":" ws "\"whetstone_export_training_data\"" ws "," ws "\"arguments\"" ws ":" ws whetstone-export-training-data-args-obj-8 ws "}" whetstone-export-training-data-args-format-pair-2 ::= "\"format\"" ws ":" ws string whetstone-export-training-data-args-languages-3-arr-5 ::= "[" ws (string (ws "," ws string)*)? ws "]" whetstone-export-training-data-args-languages-pair-6 ::= "\"languages\"" ws ":" ws whetstone-export-training-data-args-languages-3-arr-5 whetstone-export-training-data-args-obj-8 ::= "{" ws (whetstone-export-training-data-args-opt-7 (ws "," ws whetstone-export-training-data-args-opt-7)*)? ws "}" whetstone-export-training-data-args-opt-7 ::= whetstone-export-training-data-args-format-pair-2 | whetstone-export-training-data-args-languages-pair-6