| module: | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '# Copyright 2019 Google LLC' 1:1-1:28 | |
| "\n" '\n' 1:28-1:28 | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '#' 2:1-2:2 | |
| "\n" '\n' 2:2-2:2 | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '# Licensed under the Apache License, Version 2.0 (the "License");' 3:1-3:66 | |
| "\n" '\n' 3:66-3:66 | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '# you may not use this file except in compliance with the License.' 4:1-4:67 | |
| "\n" '\n' 4:67-4:67 | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '# You may obtain a copy of the License at' 5:1-5:42 | |
| "\n" '\n' 5:42-5:42 | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '#' 6:1-6:2 | |
| "\n" '\n' 6:2-6:2 | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '# https://www.apache.org/licenses/LICENSE-2.0' 7:1-7:50 | |
| "\n" '\n' 7:50-7:50 | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '#' 8:1-8:2 | |
| "\n" '\n' 8:2-8:2 | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '# Unless required by applicable law or agreed to in writing, software' 9:1-9:70 | |
| "\n" '\n' 9:70-9:70 | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '# distributed under the License is distributed on an "AS IS" BASIS,' 10:1-10:68 | |
| "\n" '\n' 10:68-10:68 | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.' 11:1-11:75 | |
| "\n" '\n' 11:75-11:75 | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '# See the License for the specific language governing permissions and' 12:1-12:70 | |
| "\n" '\n' 12:70-12:70 | |
| comment-line*: | |
| comment-line: | |
| Comment?: | |
| Comment '# limitations under the License.' 13:1-13:33 | |
| "\n" '\n' 13:33-13:33 | |
| comment-line*: | |
| comment-line: | |
| Comment? | |
| "\n" '\n' 14:1-14:1 | |
| comment-line* | |
| doc-line*: | |
| doc-line: | |
| doc: | |
| Documentation '-- This is a simple, real-world example structure.' 15:1-15:51 | |
| Comment? | |
| eol: | |
| "\n" '\n' 15:51-15:51 | |
| comment-line*: | |
| comment-line: | |
| Comment? | |
| "\n" '\n' 16:1-16:1 | |
| comment-line* | |
| doc-line* | |
| import-line* | |
| attribute-line*: | |
| attribute-line: | |
| attribute: | |
| "[" '[' 17:1-17:2 | |
| attribute-context? | |
| "$default"?: | |
| "$default" '$default' 17:2-17:10 | |
| snake-word: | |
| SnakeWord 'byte_order' 17:11-17:21 | |
| ":" ':' 17:21-17:22 | |
| attribute-value: | |
| string-constant: | |
| String '"LittleEndian"' 17:23-17:37 | |
| "]" ']' 17:37-17:38 | |
| Comment? | |
| eol: | |
| "\n" '\n' 17:38-17:38 | |
| comment-line* | |
| attribute-line*: | |
| attribute-line: | |
| attribute: | |
| "[" '[' 18:1-18:2 | |
| attribute-context?: | |
| attribute-context: | |
| "(" '(' 18:2-18:3 | |
| snake-word: | |
| SnakeWord 'cpp' 18:3-18:6 | |
| ")" ')' 18:6-18:7 | |
| "$default"? | |
| snake-word: | |
| SnakeWord 'namespace' 18:8-18:17 | |
| ":" ':' 18:17-18:18 | |
| attribute-value: | |
| string-constant: | |
| String '"emboss::test"' 18:19-18:33 | |
| "]" ']' 18:33-18:34 | |
| Comment? | |
| eol: | |
| "\n" '\n' 18:34-18:34 | |
| comment-line*: | |
| comment-line: | |
| Comment? | |
| "\n" '\n' 19:1-19:1 | |
| comment-line*: | |
| comment-line: | |
| Comment? | |
| "\n" '\n' 20:1-20:1 | |
| comment-line* | |
| attribute-line* | |
| type-definition*: | |
| type-definition: | |
| struct: | |
| "struct" 'struct' 21:1-21:7 | |
| type-name: | |
| type-word: | |
| CamelWord 'LogFileStatus' 21:8-21:21 | |
| delimited-parameter-definition-list? | |
| ":" ':' 21:21-21:22 | |
| Comment? | |
| eol: | |
| "\n" '\n' 21:22-21:22 | |
| comment-line* | |
| struct-body: | |
| Indent ' ' 22:1-22:3 | |
| doc-line* | |
| attribute-line* | |
| type-definition* | |
| struct-field-block: | |
| unconditional-struct-field: | |
| field: | |
| field-location: | |
| expression: | |
| choice-expression: | |
| logical-expression: | |
| comparison-expression: | |
| additive-expression: | |
| times-expression: | |
| negation-expression: | |
| bottom-expression: | |
| numeric-constant: | |
| Number '0' 22:3-22:4 | |
| times-expression-right* | |
| additive-expression-right* | |
| "[" '[' 22:6-22:7 | |
| "+" '+' 22:7-22:8 | |
| expression: | |
| choice-expression: | |
| logical-expression: | |
| comparison-expression: | |
| additive-expression: | |
| times-expression: | |
| negation-expression: | |
| bottom-expression: | |
| numeric-constant: | |
| Number '4' 22:8-22:9 | |
| times-expression-right* | |
| additive-expression-right* | |
| "]" ']' 22:9-22:10 | |
| type: | |
| type-reference: | |
| type-reference-tail: | |
| type-word: | |
| CamelWord 'UInt' 22:13-22:17 | |
| delimited-argument-list? | |
| type-size-specifier? | |
| array-length-specifier* | |
| snake-name: | |
| snake-word: | |
| SnakeWord 'file_state' 22:25-22:35 | |
| abbreviation? | |
| attribute* | |
| doc? | |
| Comment? | |
| eol: | |
| "\n" '\n' 22:35-22:35 | |
| comment-line* | |
| field-body? | |
| struct-field-block: | |
| unconditional-struct-field: | |
| field: | |
| field-location: | |
| expression: | |
| choice-expression: | |
| logical-expression: | |
| comparison-expression: | |
| additive-expression: | |
| times-expression: | |
| negation-expression: | |
| bottom-expression: | |
| numeric-constant: | |
| Number '4' 23:3-23:4 | |
| times-expression-right* | |
| additive-expression-right* | |
| "[" '[' 23:6-23:7 | |
| "+" '+' 23:7-23:8 | |
| expression: | |
| choice-expression: | |
| logical-expression: | |
| comparison-expression: | |
| additive-expression: | |
| times-expression: | |
| negation-expression: | |
| bottom-expression: | |
| numeric-constant: | |
| Number '12' 23:8-23:10 | |
| times-expression-right* | |
| additive-expression-right* | |
| "]" ']' 23:10-23:11 | |
| type: | |
| type-reference: | |
| type-reference-tail: | |
| type-word: | |
| CamelWord 'UInt' 23:13-23:17 | |
| delimited-argument-list? | |
| type-size-specifier?: | |
| type-size-specifier: | |
| ":" ':' 23:17-23:18 | |
| numeric-constant: | |
| Number '8' 23:18-23:19 | |
| array-length-specifier*: | |
| array-length-specifier: | |
| "[" '[' 23:19-23:20 | |
| expression: | |
| choice-expression: | |
| logical-expression: | |
| comparison-expression: | |
| additive-expression: | |
| times-expression: | |
| negation-expression: | |
| bottom-expression: | |
| numeric-constant: | |
| Number '12' 23:20-23:22 | |
| times-expression-right* | |
| additive-expression-right* | |
| "]" ']' 23:22-23:23 | |
| array-length-specifier* | |
| snake-name: | |
| snake-word: | |
| SnakeWord 'file_name' 23:25-23:34 | |
| abbreviation? | |
| attribute* | |
| doc? | |
| Comment? | |
| eol: | |
| "\n" '\n' 23:34-23:34 | |
| comment-line* | |
| field-body? | |
| struct-field-block: | |
| unconditional-struct-field: | |
| field: | |
| field-location: | |
| expression: | |
| choice-expression: | |
| logical-expression: | |
| comparison-expression: | |
| additive-expression: | |
| times-expression: | |
| negation-expression: | |
| bottom-expression: | |
| numeric-constant: | |
| Number '16' 24:3-24:5 | |
| times-expression-right* | |
| additive-expression-right* | |
| "[" '[' 24:6-24:7 | |
| "+" '+' 24:7-24:8 | |
| expression: | |
| choice-expression: | |
| logical-expression: | |
| comparison-expression: | |
| additive-expression: | |
| times-expression: | |
| negation-expression: | |
| bottom-expression: | |
| numeric-constant: | |
| Number '4' 24:8-24:9 | |
| times-expression-right* | |
| additive-expression-right* | |
| "]" ']' 24:9-24:10 | |
| type: | |
| type-reference: | |
| type-reference-tail: | |
| type-word: | |
| CamelWord 'UInt' 24:13-24:17 | |
| delimited-argument-list? | |
| type-size-specifier? | |
| array-length-specifier* | |
| snake-name: | |
| snake-word: | |
| SnakeWord 'file_size_kb' 24:25-24:37 | |
| abbreviation? | |
| attribute* | |
| doc? | |
| Comment? | |
| eol: | |
| "\n" '\n' 24:37-24:37 | |
| comment-line* | |
| field-body? | |
| struct-field-block: | |
| unconditional-struct-field: | |
| field: | |
| field-location: | |
| expression: | |
| choice-expression: | |
| logical-expression: | |
| comparison-expression: | |
| additive-expression: | |
| times-expression: | |
| negation-expression: | |
| bottom-expression: | |
| numeric-constant: | |
| Number '20' 25:3-25:5 | |
| times-expression-right* | |
| additive-expression-right* | |
| "[" '[' 25:6-25:7 | |
| "+" '+' 25:7-25:8 | |
| expression: | |
| choice-expression: | |
| logical-expression: | |
| comparison-expression: | |
| additive-expression: | |
| times-expression: | |
| negation-expression: | |
| bottom-expression: | |
| numeric-constant: | |
| Number '4' 25:8-25:9 | |
| times-expression-right* | |
| additive-expression-right* | |
| "]" ']' 25:9-25:10 | |
| type: | |
| type-reference: | |
| type-reference-tail: | |
| type-word: | |
| CamelWord 'UInt' 25:13-25:17 | |
| delimited-argument-list? | |
| type-size-specifier? | |
| array-length-specifier* | |
| snake-name: | |
| snake-word: | |
| SnakeWord 'media' 25:25-25:30 | |
| abbreviation? | |
| attribute* | |
| doc? | |
| Comment? | |
| eol: | |
| "\n" '\n' 25:30-25:30 | |
| comment-line* | |
| field-body? | |
| struct-field-block | |
| Dedent '' 26:1-26:1 | |
| type-definition* | |