Unify %define-lines and %section directives
Also adds %insert-indented for the specification file.
Inserting an indented section inside another section is convenient when
working with nested data structures, e.g.
types.spec:
%section OperandLifeTime
enum OperandLifeTime { ... };
%/section
%section Operand
struct Operand {
%kind canonical
%insert-indented 4 OperandLifeTime
%/kind
...
};
%/section
1.0/types.t:
%insert OperandLifeTime
%insert Operand
Types.t (canonical):
%insert Operand
After this change, the following constructs are allowed:
- section within conditional
- conditional within section
The following is still disallowed:
- section within conditional within section
- conditional within section within conditional
Bug: 160667417
Test: ./generate_api.sh
Change-Id: I6e7f548e583ae302477503764ac1efb63bb71f60
3 files changed