Pierre-Marie de Rodat
6e88d6ec25
Lkt: revamp the module system
2026-01-20 16:03:43 +00:00
Pierre-Marie de Rodat
6cefc74c93
Set up pre-commit checks and reformat the Python sources with black
2025-03-26 14:04:20 +00:00
Pierre-Marie de Rodat
e1c4fe5804
Introduce the lkt_build_and_run test driver
...
Transition all relevant testcases to it. In the process, port
docstrings/comments from test.py files to expected_concrete_syntax.lkt
(now test.lkt) sources and fix stylechecks issues there.
2024-10-15 14:13:10 +00:00
Pierre-Marie de Rodat
a1c844d5ee
Lkt: remove the root type argument for builtin generic types
...
For AnalysisUnit and LexicalEnv, there is no type argument left, so they
are not generic types anymore.
2024-07-04 12:37:30 +00:00
Romain Beguet
05362a5e93
Improve style and fix formatting issues in dsl_unparse.
2024-07-03 08:23:35 +00:00
Pierre-Marie de Rodat
ec4872e418
Lkt: change naming convention for token names for lower to camel
...
This makes the convention consistent with the DSL, and avoids
workarounds for conflicts with Lkt keywords: in Libadalang, the Null
token can stay Null, instead of null_tok (no API breakage needed).
2024-06-28 08:41:26 +00:00
Pierre-Marie de Rodat
dca25f78d6
Lkt: rename @has_abstract_list to @with_abstract_list
2024-06-19 10:18:02 +00:00
Pierre-Marie de Rodat
f75832df8a
langkit.dsl_unparse: minor style tweaks
2023-12-13 13:55:06 +00:00
Pierre-Marie de Rodat
7698a8d111
dsl_unparse: remove spurious line break in grammars
...
For GitLab issue #612
2022-05-17 11:52:36 +02:00
Pierre-Marie de Rodat
11ab0daea6
dsl_unparse: add an empty line after import statements
...
This makes the output sources more readable.
For GitLab issue #612
2022-05-17 11:52:36 +02:00
Pierre-Marie de Rodat
0521a6de67
Lkt: make ASTList derive from RootNode
...
This is necessary in order to let ASTList[T] have the same properties as
any other node.
TN: RA22-015
2021-12-13 16:19:34 +01:00
Pierre-Marie de Rodat
2f9dd693c7
Ada/Python APIs: protect against uses of stale token references
...
TN: UA19-026
2021-10-26 14:35:47 +02:00
Laurent Thévenoux
042d578dd5
U920-002: avoid mismatched type error on root node
...
As the LexicalEnv.get method always return an array of root nodes
while the root node is defined in user code, we need to turn the Node
and LexicalEnv classes into generic traits and instantiate them using
the actual root node.
To make this works, root node declaration has to be changed from
`class FooNode : Node` to `class FooNode implements Node[FooNode]`,
which required to refactor a bit almost all the lkt tests.
2021-09-27 17:39:36 +02:00
Pierre-Marie de Rodat
5dbf999964
Python API: remove support for Python2
...
TN: U720-016
2021-09-24 15:54:42 +02:00
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
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
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
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
770513f43d
Generate and interpret the @token_node node annotation
...
TN: RA22-015
2020-06-11 14:37:13 +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
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