1This directory contains an `.emb` and a set of golden files which correspond to 2various parsing stages of the `.emb`. The primary purpose is to highlight 3changes to the parse tree, tokenization, or (uncooked) intermediate 4representation in a code review, where the before/after can be seen in 5side-by-side diffs. The golden files *are* checked by unit tests, but test 6failures generally just mean that the files need to be regenerated, not that 7there is an actual bug. 8 9 10## `span_se_log_file_status.emb` 11 12The .emb file from which the other files are derived. 13 14 15## `span_se_log_file_status.tokens.txt` 16 17The tokenization. This file should change very rarely. From the workspace root 18directory, it can be generated with: 19 20 bazel run //front_end:emboss_front_end \ 21 -- --no-debug-show-header-lines --debug-show-tokenization \ 22 $(pwd)/testdata/golden/span_se_log_file_status.emb \ 23 > $(pwd)/testdata/golden/span_se_log_file_status.tokens.txt 24 25 26## `span_se_log_file_status.parse_tree.txt` 27 28The syntactic parse tree. From the workspace root directory, it can be 29generated with: 30 31 bazel run //front_end:emboss_front_end \ 32 -- --no-debug-show-header-lines --debug-show-parse-tree \ 33 $(pwd)/testdata/golden/span_se_log_file_status.emb \ 34 > $(pwd)/testdata/golden/span_se_log_file_status.parse_tree.txt 35 36 37## `span_se_log_file_status.ir.txt` 38 39The "uncooked" module-level IR: that is, the IR of *only* 40`span_se_log_file_status.emb` (without the prelude or any imports), straight out 41of `module_ir.py` with no "middle end" transformations. From the workspace root 42directory, it can be generated with: 43 44 blaze run //front_end:emboss_front_end \ 45 -- --no-debug-show-header-lines --debug-show-module-ir \ 46 $(pwd)/testdata/golden/span_se_log_file_status.emb \ 47 > $(pwd)/testdata/golden/span_se_log_file_status.ir.txt 48