[ { "type": "block", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "dollar_quote", "named": true } ] } }, { "type": "create_function_statement", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "block", "named": true }, { "type": "function_signature", "named": true }, { "type": "function_volatility", "named": true }, { "type": "identifier", "named": true }, { "type": "or_replace", "named": true } ] } }, { "type": "dollar_quote", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "identifier", "named": true } ] } }, { "type": "function_parameter", "named": true, "fields": { "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "type": { "multiple": true, "required": true, "types": [ { "type": "[", "named": false }, { "type": "]", "named": false }, { "type": "identifier", "named": true } ] } } }, { "type": "function_parameters", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "function_parameter", "named": true } ] } }, { "type": "function_signature", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "function_parameters", "named": true }, { "type": "identifier", "named": true } ] } }, { "type": "function_volatility", "named": true, "fields": {} }, { "type": "or_replace", "named": true, "fields": {} }, { "type": "source_file", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "create_function_statement", "named": true } ] } }, { "type": "$", "named": false }, { "type": "(", "named": false }, { "type": ")", "named": false }, { "type": ",", "named": false }, { "type": ";", "named": false }, { "type": "AS", "named": false }, { "type": "CREATE", "named": false }, { "type": "FUNCTION", "named": false }, { "type": "IMMUTABLE", "named": false }, { "type": "LANGUAGE", "named": false }, { "type": "OR", "named": false }, { "type": "REPLACE", "named": false }, { "type": "RETURNS", "named": false }, { "type": "STABLE", "named": false }, { "type": "VOLATILE", "named": false }, { "type": "[", "named": false }, { "type": "]", "named": false }, { "type": "identifier", "named": true } ]