Raphaël AMIARD
fa11d4bdd3
T917-024/SA28-035: Don't use negative ranges for token slocs.
2020-09-21 15:16:26 +02:00
Raphaël AMIARD
eff5ae2cd9
T910-014: Improve App
...
- Allow just subclassing App.process_unit, by providing a default main
that iterates on units and calls process_unit on each
- Allow passing args to python App programmatically
2020-09-11 17:54:55 +02:00
Raphaël AMIARD
3b19d67528
SA28-035: Don't store source locations in token data
...
Instead, compute them lazily from offset data.
This creates a slight breakage in the generated slocs for token with
negative spans. Since there is not much you could do with the end sloc
of a token with a negative span range before, this is considered a
minor breakage.
2020-09-08 16:57:26 +02:00
Raphaël AMIARD
3eef9cdc25
RA22-015: make Node a base class rt. a trait
2020-06-30 15:43:53 +02:00
Raphaël AMIARD
119379f643
RA22-015 dsl_unparse: Unparse @with_lexer annotation
2020-06-30 15:43:53 +02:00
Pierre-Marie de Rodat
6600963d0f
dsl_unparse: fix handling for abstract properties
...
TN: RA22-015
2020-06-23 16:19:45 +02:00
Pierre-Marie de Rodat
71f773e0ff
Rename SymbolNode to TokenNode
...
TN: RA22-015
2020-06-17 11:45:07 +02:00
Raphaël AMIARD
2060a7c36d
RA22-015: make token_node/root_node traits
2020-06-16 15:19:35 +02:00
Pierre-Marie de Rodat
adaebf3a3a
Lkt lowering: handle enum nodes (qualifier ones included)
...
TN: RA22-015
2020-06-15 16:11:44 +02:00
Pierre-Marie de Rodat
55fe04716e
dsl_unparse: fix syntax for qualifier enum nodes
...
TN: RA22-015
2020-06-12 14:01:11 +02:00
Raphaël AMIARD
a7cd8f3a39
RA22-015: New syntax for enum classes
2020-06-11 17:07:45 +02:00
Pierre-Marie de Rodat
cc52e46c10
Generate and interpret the @@has_abstract_list node annotation
...
TN: RA22-015
2020-06-11 14:37:13 +02:00
Pierre-Marie de Rodat
b72147bbb7
Testsuite: add types_from_lkt=True wherever possible
...
TN: RA22-015
2020-06-11 14:37:13 +02:00
Pierre-Marie de Rodat
770513f43d
Generate and interpret the @token_node node annotation
...
TN: RA22-015
2020-06-11 14:37:13 +02:00
Pierre-Marie de Rodat
2b40a5ce99
Lkt: start handling the lowering of nodes
...
TN: RA22-015
2020-06-11 14:37:13 +02:00
Pierre-Marie de Rodat
ef315c4345
Python API: fix ASTNode.dump_str with Python3
...
Fixes #353
2020-06-01 17:51:37 +02:00
Pierre-Marie de Rodat
2b9b33d6a0
Remove __future__ imports and adjust stylechecks
...
TN: T511-017
2020-05-26 12:33:48 +02:00
Pierre-Marie de Rodat
d3db6f97a3
dsl_unparse: make the order of fields in New() expressions deterministic
...
TN: T511-017
2020-05-26 12:33:48 +02:00
Raphaël AMIARD
4e14e1f2b3
RA22-015: don't emit EnvAssoc
2020-05-14 17:07:42 +02:00
Pierre-Marie de Rodat
f352c7a361
Python API: do not dec_ref C array values when coming from struct fields
...
TN: T423-042
2020-04-28 11:48:45 +02:00
Raphaël AMIARD
25ef86e25a
RA22-015: dsl_unparse: filter_map -> filtermap
2020-03-27 16:46:10 +01:00
Raphaël AMIARD
5dab1571b2
RA22-015: cleanup syntax for casts and type checks
2020-03-27 16:46:10 +01:00
Raphaël AMIARD
e5357ae48a
RA22-015: cleanup method vs field emission
2020-03-27 16:46:10 +01:00
Pierre-Marie de Rodat
de58c96d16
Testsuite: factorize common lexers in the concrete syntax
...
TN: RA22-015
2020-03-16 10:41:18 +01:00
Pierre-Marie de Rodat
05ca4fbcb1
Slightly change lexer annotation syntax
...
Since @text, @trivia and @symbol take arguments, enforce parens for
them.
TN: RA22-015
2020-03-16 10:41:18 +01:00