25 Commits

Author SHA1 Message Date
Hugo Guerrier
7809c5bfd0 Java API: Ensure empty structs 'dummy' field is correctly initialized when unwrapping
Also ensure empty struct types have a valid 'wrap' method.
2025-09-01 11:51:18 +02:00
Hugo Guerrier
7e70293542 Make 'NodeList' iterable in Java API 2025-04-04 09:23:57 +00:00
Pierre-Marie de Rodat
e3d641f973 C API: symbolize exception stack traces only on demand
Symbolization is a costly operation: do it only when requested. Rework
the C API to make this possible. For now, do it automatically in the
Java API to avoid breaking existing Java programs: this will fix the
performance situation in the other C-based APIs.
2025-03-10 13:49:16 +00:00
Remi Segard
c92a5d0027 Add visitor with default behavior in Java bindings 2025-01-31 14:35:27 +01:00
Hugo Guerrier
8c5d6fe202 Adapt Java API to exception stack trace exposure 2025-01-20 08:56:41 +00:00
Pierre-Marie de Rodat
aef63bd2f7 Avoid reparsing units when their source buffer does not change
Also adapt testcases so that they don't rely on unconditionnal
reparsing when the source buffer stays the same.
2024-12-16 09:07:47 +00:00
Hugo Guerrier
69e4c0397b Complete iterators support in the Java bindings
Support for iterators in the Java API was minimal: iterator types were
materialized as types with no iteration primitive.
2024-12-02 08:52:03 +00:00
Hugo Guerrier
f5c19813ee Melt the Java 'node_identity' test into the 'general' one 2024-10-10 09:53:06 +00:00
Hugo Guerrier
4d573c6a8c Melt the Java 'event_handler' test into the 'general' one 2024-10-10 09:53:06 +00:00
Hugo Guerrier
623c051c44 Melt the Java 'array_exc' test into the 'general' one 2024-10-10 09:53:06 +00:00
Hugo Guerrier
302c01e265 Java API: Add member reference in the reflection field structure 2024-07-11 12:13:35 +02:00
Hugo Guerrier
d030b8bbcf Rename the 'Param' class and remove the 'ParamWithDefaultValue' one
Do this renaming to avoid conflicts with possible "Param" named nodes.
Remove 'ParamWithDefaultValue' because it is unnecessary.
2024-06-28 09:51:15 +00:00
Hugo Guerrier
5b5d8c6cc4 Add array of primitive types support 2024-05-30 13:40:35 +00:00
Remi SEGARD
c38005ad64 Fix style 2024-04-29 13:06:05 +00:00
Remi SEGARD
feb171e7a3 Java: change AnalysisContext.getDiagnostic return type to array 2024-04-29 13:06:05 +00:00
Remi SEGARD
53c9cd8763 Turn array wrapping into a utility 2024-04-29 13:06:05 +00:00
Remi SEGARD
e97200a407 Java bindings: improve generation of array types 2024-04-29 13:06:05 +00:00
Hugo Guerrier
81191d866c Add a node description class to store all information about a node kind
This class helps centralize information about nodes.
2024-04-03 12:53:43 +02:00
Hugo Guerrier
3e32d6ca1e Wrap node types struct fields in their Java Classes
Before this commit, node typed structure fields were stored as is in
Java structure wrapping classes. Entities were 'Entity' and bare node
were 'PointerWrapper'.
Now, those fields are stored as '<my_lang>Node' in their Java wrapping
classes.
2024-04-03 09:41:17 +00:00
Hugo Guerrier
2ca1204d49 Correct 'AnalysisUnit.equals' method
Before this commit, in the 'AnalysisUnit.equals' method, the other value
was compared with itself, resulting in the method returning always true.
Now 'other' is compared to 'this'.
2024-03-11 14:52:31 +00:00
Hugo Guerrier
f4904d0996 minor: Refactor 'Token.equals' operands order
For consistency reasons, move 'this' to the LHS and 'other' to
the RHS in 'Token.equals' method.
2024-03-11 14:52:31 +00:00
Hugo Guerrier
3c08faebb8 minor: Remove all mentions of "AST" because Langkit is producing a parse tree 2024-03-11 14:52:31 +00:00
Pierre-Marie de Rodat
27c7a4de00 Java API: bind AnalysisContext.Get_From_Provider 2023-07-31 09:28:19 +00:00
Hugo Guerrier
5e7679415f minor: Change AST dumping method to remove reflection usage
Also make Java AST dumping similar to Python/Ada AST dumping
2023-06-28 17:58:43 +02:00
Romain Beguet
add1137dd8 Allow factorizing common code in Java bindings tests. 2023-06-21 11:49:07 +02:00