Commit Graph

4739 Commits

Author SHA1 Message Date
Raphael Amiard
5e09063757 Q322-037: Implement proper snapping
Users can annotate node that they want to have snapping sloc behavior.
Additionally, incomplete nodes snap at the end.

Change-Id: Ib3b8d3337d1356059b01694b547265386afd814f
2018-02-15 12:16:32 +01:00
Raphael Amiard
54c79a6c39 Q322-037: Show incomplete nodes in Print
Change-Id: I72c7f5b41d274087f4b9e6cfc34037a44c9ef46c
2018-02-15 12:10:58 +01:00
Raphael Amiard
1f8e548b9d Q322-037: Add Is_Incomplete built-in
Change-Id: Ia4aba036d626d01c7c986665f23f252a6cd19f2f
2018-02-15 12:10:58 +01:00
Raphael Amiard
680de21567 Q322-037: Keep track of failure in nodes
Change-Id: I1df44af9d44839fdd5af993cb73e27ae1882ff58
2018-02-15 12:06:09 +01:00
Raphael Amiard
8f91702417 Q322-037: Fix makoada vim file
Change-Id: I7dc52eddb534c04eba1bd00976269e0e03ea6ac7
2018-02-15 12:06:09 +01:00
Raphael Amiard
d8c5b91f95 Q322-037: Factor logic emitting a dispatching case
Change-Id: I781a7eb242632eb57d2fb5ecb8965584c8b82cb3
2018-02-15 12:06:09 +01:00
Raphael Amiard
df1897354b Minor style (no-tn-check): collapse line
Change-Id: I1e533da164a4f232b2e0432b050969c7ce698db2
2018-02-15 12:06:09 +01:00
Raphael Amiard
f3677e35ac Minor (no-tn-check): refactoring of row_code template
Change-Id: I5ed93c034e8162ee121f447736178955c0901005
2018-02-15 12:06:09 +01:00
Raphael Amiard
21ed857c80 Q322-037: Add NoBacktrack parser
Change-Id: Ifc061895c9e0241d3176fbee519db02b6dac00c7
2018-02-15 12:06:09 +01:00
Raphael Amiard
54238d366b Minor (no-tn-check): correct error message's grammar
Change-Id: I108a6bcc503bee88a9a4781f6e715a1c23ca7757
2018-02-15 12:06:09 +01:00
Raphael Amiard
4a648e3416 Minor (no-tn-check): add type annotation
Change-Id: I87d2fcc4bfb0db6eb1a0d82f36b298b337e195be
2018-02-15 12:06:09 +01:00
Raphael Amiard
844eb787f1 Q322-037: Add __str__ to parsers.VarDef
Change-Id: Ie3a6861452169e9d2589c2ef909a319fb320fd0c
2018-02-15 12:06:09 +01:00
Raphael Amiard
effd270905 Minor no-tn-check typo fix
Change-Id: Ib53f3023014a47ae377ed8389c71c522c0b2a15a
2018-02-15 12:06:09 +01:00
Pierre-Marie de Rodat
d3770613fd $.Analysis: add an Is_List_Node predicate for node kinds
TN: R115-038
2018-02-15 12:01:39 +01:00
Pierre-Marie de Rodat
4397ce6904 $.Analysis: expose a Is_Token_Node primitive for node kinds
TN: R115-038
2018-02-15 12:01:35 +01:00
Pierre-Marie de Rodat
4d1abaf95f $.Analysis: minor reformatting
TN: R115-038
2018-02-15 11:37:21 +01:00
Pierre-Marie de Rodat
f45448c6ee $.Analysis.Implementation: allow parsing with no analysis unit
TN: R115-038
2018-02-15 11:37:21 +01:00
Pierre-Marie de Rodat
a69f687bcd $.Parser: new Init_Parser_From_Buffer overloads working on decoded src.
TN: R115-038
2018-02-15 11:37:21 +01:00
Pierre-Marie de Rodat
008b1ad1e0 $.Lexer: add a Lex_From_Buffer overloads working on decoded sources
TN: R115-038
2018-02-15 11:37:21 +01:00
Pierre-Marie de Rodat
2255123c6a $.Lexer: refactor Lex_From_Buffer
Introduce a new helper that will be common to two Lex_From_Buffer
functions: one that will take an undecoded buffer, and one that will
take a decoded one.

TN: R115-038
2018-02-15 11:37:21 +01:00
Pierre-Marie de Rodat
80d79926f2 $.Lexer: adjust comments about exceptional behavior in Lex_From_* funcs.
TN: R115-038
2018-02-15 11:37:21 +01:00
Pierre-Marie de Rodat
369355358e Parsers: don't require an analysis unit
This will help parsing templates for rewriting code, as templates must
be parseable without any "contextual" unit.

TN: R115-038
2018-02-15 11:37:21 +01:00
Pierre-Marie de Rodat
177dc38a6d $.Analysis: simplify Reparse implementations
TN: R115-038
2018-02-15 10:34:04 +01:00
Pierre-Marie de Rodat
f48317d8be Make most symbol literals code generation unconditional
This simplifies code generation and does not harm generated libraries.

TN: R115-038
2018-02-14 17:44:11 +01:00
Pierre-Marie de Rodat
40471c972b tests/misc/unit_canon: add some logging...
... hopping it will help diagnose issues that occur only nightly on
Windows.

TN: R209-030
2018-02-12 17:02:54 +01:00