{ | |
"attribute": [ | |
{ | |
"name": { | |
"text": "byte_order", | |
"source_location": { | |
"start": { | |
"line": 17, | |
"column": 11 | |
}, | |
"end": { | |
"line": 17, | |
"column": 21 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"value": { | |
"string_constant": { | |
"text": "LittleEndian", | |
"source_location": { | |
"start": { | |
"line": 17, | |
"column": 23 | |
}, | |
"end": { | |
"line": 17, | |
"column": 37 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 17, | |
"column": 23 | |
}, | |
"end": { | |
"line": 17, | |
"column": 37 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"is_default": true, | |
"source_location": { | |
"start": { | |
"line": 17, | |
"column": 1 | |
}, | |
"end": { | |
"line": 17, | |
"column": 38 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
{ | |
"name": { | |
"text": "namespace", | |
"source_location": { | |
"start": { | |
"line": 18, | |
"column": 8 | |
}, | |
"end": { | |
"line": 18, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"value": { | |
"string_constant": { | |
"text": "emboss::test", | |
"source_location": { | |
"start": { | |
"line": 18, | |
"column": 19 | |
}, | |
"end": { | |
"line": 18, | |
"column": 33 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 18, | |
"column": 19 | |
}, | |
"end": { | |
"line": 18, | |
"column": 33 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"is_default": false, | |
"back_end": { | |
"text": "cpp", | |
"source_location": { | |
"start": { | |
"line": 18, | |
"column": 2 | |
}, | |
"end": { | |
"line": 18, | |
"column": 7 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 18, | |
"column": 1 | |
}, | |
"end": { | |
"line": 20, | |
"column": 1 | |
}, | |
"is_synthetic": false | |
} | |
} | |
], | |
"type": [ | |
{ | |
"structure": { | |
"field": [ | |
{ | |
"location": { | |
"start": { | |
"constant": { | |
"value": "0", | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 3 | |
}, | |
"end": { | |
"line": 22, | |
"column": 4 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 3 | |
}, | |
"end": { | |
"line": 22, | |
"column": 4 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"size": { | |
"constant": { | |
"value": "4", | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 8 | |
}, | |
"end": { | |
"line": 22, | |
"column": 9 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 8 | |
}, | |
"end": { | |
"line": 22, | |
"column": 9 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 3 | |
}, | |
"end": { | |
"line": 22, | |
"column": 10 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"type": { | |
"atomic_type": { | |
"reference": { | |
"source_name": [ | |
{ | |
"text": "UInt", | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 13 | |
}, | |
"end": { | |
"line": 22, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
} | |
], | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 13 | |
}, | |
"end": { | |
"line": 22, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 13 | |
}, | |
"end": { | |
"line": 22, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 13 | |
}, | |
"end": { | |
"line": 22, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"name": { | |
"name": { | |
"text": "file_state", | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 25 | |
}, | |
"end": { | |
"line": 22, | |
"column": 35 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 25 | |
}, | |
"end": { | |
"line": 22, | |
"column": 35 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 3 | |
}, | |
"end": { | |
"line": 22, | |
"column": 35 | |
} | |
}, | |
"existence_condition": { | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 3 | |
}, | |
"end": { | |
"line": 22, | |
"column": 35 | |
}, | |
"is_synthetic": false | |
}, | |
"boolean_constant": { | |
"source_location": { | |
"start": { | |
"line": 22, | |
"column": 3 | |
}, | |
"end": { | |
"line": 22, | |
"column": 35 | |
}, | |
"is_synthetic": false | |
}, | |
"value": true | |
} | |
} | |
}, | |
{ | |
"location": { | |
"start": { | |
"constant": { | |
"value": "4", | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 3 | |
}, | |
"end": { | |
"line": 23, | |
"column": 4 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 3 | |
}, | |
"end": { | |
"line": 23, | |
"column": 4 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"size": { | |
"constant": { | |
"value": "12", | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 8 | |
}, | |
"end": { | |
"line": 23, | |
"column": 10 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 8 | |
}, | |
"end": { | |
"line": 23, | |
"column": 10 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 3 | |
}, | |
"end": { | |
"line": 23, | |
"column": 11 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"type": { | |
"array_type": { | |
"base_type": { | |
"atomic_type": { | |
"reference": { | |
"source_name": [ | |
{ | |
"text": "UInt", | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 13 | |
}, | |
"end": { | |
"line": 23, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
} | |
], | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 13 | |
}, | |
"end": { | |
"line": 23, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 13 | |
}, | |
"end": { | |
"line": 23, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"size_in_bits": { | |
"constant": { | |
"value": "8", | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 18 | |
}, | |
"end": { | |
"line": 23, | |
"column": 19 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 17 | |
}, | |
"end": { | |
"line": 23, | |
"column": 19 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 13 | |
}, | |
"end": { | |
"line": 23, | |
"column": 19 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"element_count": { | |
"constant": { | |
"value": "12", | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 20 | |
}, | |
"end": { | |
"line": 23, | |
"column": 22 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 19 | |
}, | |
"end": { | |
"line": 23, | |
"column": 23 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 13 | |
}, | |
"end": { | |
"line": 23, | |
"column": 23 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 13 | |
}, | |
"end": { | |
"line": 23, | |
"column": 23 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"name": { | |
"name": { | |
"text": "file_name", | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 25 | |
}, | |
"end": { | |
"line": 23, | |
"column": 34 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 25 | |
}, | |
"end": { | |
"line": 23, | |
"column": 34 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 3 | |
}, | |
"end": { | |
"line": 23, | |
"column": 34 | |
} | |
}, | |
"existence_condition": { | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 3 | |
}, | |
"end": { | |
"line": 23, | |
"column": 34 | |
}, | |
"is_synthetic": false | |
}, | |
"boolean_constant": { | |
"source_location": { | |
"start": { | |
"line": 23, | |
"column": 3 | |
}, | |
"end": { | |
"line": 23, | |
"column": 34 | |
}, | |
"is_synthetic": false | |
}, | |
"value": true | |
} | |
} | |
}, | |
{ | |
"location": { | |
"start": { | |
"constant": { | |
"value": "16", | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 3 | |
}, | |
"end": { | |
"line": 24, | |
"column": 5 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 3 | |
}, | |
"end": { | |
"line": 24, | |
"column": 5 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"size": { | |
"constant": { | |
"value": "4", | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 8 | |
}, | |
"end": { | |
"line": 24, | |
"column": 9 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 8 | |
}, | |
"end": { | |
"line": 24, | |
"column": 9 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 3 | |
}, | |
"end": { | |
"line": 24, | |
"column": 10 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"type": { | |
"atomic_type": { | |
"reference": { | |
"source_name": [ | |
{ | |
"text": "UInt", | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 13 | |
}, | |
"end": { | |
"line": 24, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
} | |
], | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 13 | |
}, | |
"end": { | |
"line": 24, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 13 | |
}, | |
"end": { | |
"line": 24, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 13 | |
}, | |
"end": { | |
"line": 24, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"name": { | |
"name": { | |
"text": "file_size_kb", | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 25 | |
}, | |
"end": { | |
"line": 24, | |
"column": 37 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 25 | |
}, | |
"end": { | |
"line": 24, | |
"column": 37 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 3 | |
}, | |
"end": { | |
"line": 24, | |
"column": 37 | |
} | |
}, | |
"existence_condition": { | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 3 | |
}, | |
"end": { | |
"line": 24, | |
"column": 37 | |
}, | |
"is_synthetic": false | |
}, | |
"boolean_constant": { | |
"source_location": { | |
"start": { | |
"line": 24, | |
"column": 3 | |
}, | |
"end": { | |
"line": 24, | |
"column": 37 | |
}, | |
"is_synthetic": false | |
}, | |
"value": true | |
} | |
} | |
}, | |
{ | |
"location": { | |
"start": { | |
"constant": { | |
"value": "20", | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 3 | |
}, | |
"end": { | |
"line": 25, | |
"column": 5 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 3 | |
}, | |
"end": { | |
"line": 25, | |
"column": 5 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"size": { | |
"constant": { | |
"value": "4", | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 8 | |
}, | |
"end": { | |
"line": 25, | |
"column": 9 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 8 | |
}, | |
"end": { | |
"line": 25, | |
"column": 9 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 3 | |
}, | |
"end": { | |
"line": 25, | |
"column": 10 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"type": { | |
"atomic_type": { | |
"reference": { | |
"source_name": [ | |
{ | |
"text": "UInt", | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 13 | |
}, | |
"end": { | |
"line": 25, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
} | |
], | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 13 | |
}, | |
"end": { | |
"line": 25, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 13 | |
}, | |
"end": { | |
"line": 25, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 13 | |
}, | |
"end": { | |
"line": 25, | |
"column": 17 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"name": { | |
"name": { | |
"text": "media", | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 25 | |
}, | |
"end": { | |
"line": 25, | |
"column": 30 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 25 | |
}, | |
"end": { | |
"line": 25, | |
"column": 30 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 3 | |
}, | |
"end": { | |
"line": 25, | |
"column": 30 | |
} | |
}, | |
"existence_condition": { | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 3 | |
}, | |
"end": { | |
"line": 25, | |
"column": 30 | |
}, | |
"is_synthetic": false | |
}, | |
"boolean_constant": { | |
"source_location": { | |
"start": { | |
"line": 25, | |
"column": 3 | |
}, | |
"end": { | |
"line": 25, | |
"column": 30 | |
}, | |
"is_synthetic": false | |
}, | |
"value": true | |
} | |
} | |
} | |
], | |
"source_location": { | |
"start": { | |
"line": 21, | |
"column": 1 | |
}, | |
"end": { | |
"line": 26, | |
"column": 1 | |
} | |
} | |
}, | |
"addressable_unit": 8, | |
"source_location": { | |
"start": { | |
"line": 21, | |
"column": 1 | |
}, | |
"end": { | |
"line": 26, | |
"column": 1 | |
}, | |
"is_synthetic": false | |
}, | |
"name": { | |
"name": { | |
"text": "LogFileStatus", | |
"source_location": { | |
"start": { | |
"line": 21, | |
"column": 8 | |
}, | |
"end": { | |
"line": 21, | |
"column": 21 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 21, | |
"column": 8 | |
}, | |
"end": { | |
"line": 21, | |
"column": 21 | |
}, | |
"is_synthetic": false | |
} | |
} | |
} | |
], | |
"documentation": [ | |
{ | |
"text": "This is a simple, real-world example structure.", | |
"source_location": { | |
"start": { | |
"line": 15, | |
"column": 1 | |
}, | |
"end": { | |
"line": 16, | |
"column": 1 | |
}, | |
"is_synthetic": false | |
} | |
} | |
], | |
"foreign_import": [ | |
{ | |
"file_name": { | |
"text": "", | |
"source_location": { | |
"start": { | |
"line": 16, | |
"column": 1 | |
}, | |
"end": { | |
"line": 16, | |
"column": 1 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"local_name": { | |
"text": "", | |
"source_location": { | |
"start": { | |
"line": 16, | |
"column": 1 | |
}, | |
"end": { | |
"line": 16, | |
"column": 1 | |
}, | |
"is_synthetic": false | |
} | |
}, | |
"source_location": { | |
"start": { | |
"line": 16, | |
"column": 1 | |
}, | |
"end": { | |
"line": 16, | |
"column": 1 | |
}, | |
"is_synthetic": false | |
} | |
} | |
], | |
"source_location": { | |
"start": { | |
"line": 1, | |
"column": 1 | |
}, | |
"end": { | |
"line": 26, | |
"column": 1 | |
}, | |
"is_synthetic": false | |
}, | |
"source_text": "# Copyright 2019 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# https://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n-- This is a simple, real-world example structure.\n\n[$default byte_order: \"LittleEndian\"]\n[(cpp) namespace: \"emboss::test\"]\n\n\nstruct LogFileStatus:\n 0 [+4] UInt file_state\n 4 [+12] UInt:8[12] file_name\n 16 [+4] UInt file_size_kb\n 20 [+4] UInt media\n" | |
} |