Paolo Tranquilli
afb97d2797
Rust: regenerate schema
2025-04-07 14:34:33 +02:00
Paolo Tranquilli
1c89b5185a
Rust: rename RecordFieldList to StructFieldList
2025-03-31 13:11:45 +02:00
Paolo Tranquilli
8bfc1c424e
Rust: rename several entities using more accepted names
2025-03-31 13:07:43 +02:00
Paolo Tranquilli
01a69bffbe
Merge branch 'main' into redsun82/codegen-rename-dbscheme
2025-03-28 15:06:08 +01:00
Paolo Tranquilli
7cf3cac24a
Rust: reinstate Variant as Addressable
2025-03-20 16:55:37 +01:00
Paolo Tranquilli
ea11b08f28
Rust: rerun code generation
2025-03-20 16:51:35 +01:00
Paolo Tranquilli
b48d9a255e
Rust: undo rename of Path::segment to Path::part
2025-03-20 16:30:35 +01:00
Paolo Tranquilli
e9b931e2aa
Merge branch 'main' into redsun82/codegen-rust-ancestor-order
2025-03-20 13:13:10 +01:00
Paolo Tranquilli
4110636032
Rust: preserve ordering in rust generated code
...
This is a small devex improvement to the rust code generator.
Usage of `sorted` in `rustgen.py` was causing the generated code to be
completely reshuffled on renames, which made diffs hard to follow. As an
example see [this generated file diff](https://github.com/github/codeql/pull/19059/files#diff-c938ba77a3398dd4c633ada5702a03477705c24740a2f7d1e40d4b270d8c3f86 ).
This will make the order deterministically based on the order of
definitions in the schema file. This means that renames will find the
same place in the generated file, and the place in the generated file
will generally be more predictable with respect to the schema.
However, that does mean this change is heavily reshuffling the generated
code.
2025-03-20 12:12:52 +01:00
Tom Hvitved
cbb9987a20
Merge remote-tracking branch 'upstream/main' into rust/dependency-renaming
2025-03-20 11:45:03 +01:00
Tom Hvitved
d19188db8f
Address review comment
2025-03-20 11:39:52 +01:00
Simon Friis Vindum
b2b650ddd3
Rust: Rename classes with Record to Struct
2025-03-19 12:05:39 +01:00
Tom Hvitved
0bf2bfa2f1
Rust: Take depdency renaming into account when extracting the crate graph
2025-03-19 08:39:22 +01:00
Tom Hvitved
0dd59cbb25
Rust: Make Crate a sub class of Locatable
2025-03-14 13:18:02 +01:00
Arthur Baars
75ca04f3dd
Rust: add Crate to dbscheme
2025-03-10 10:16:12 +01:00
Paolo Tranquilli
cbae16b392
Rust: rerun code generation
2025-02-25 13:31:16 +01:00
Paolo Tranquilli
689e7b8440
Rust: fix <X as Y> path extraction
...
This works around a quirk in rust-analyzer's AST generation machinery,
where for an `<X as Y>` path there might be no way to directly get `Y`
from the path segment.
2025-02-24 10:38:15 +01:00
Arthur Baars
8d96c87abe
Rust: add UseTree::is_star
2025-01-28 16:12:25 +01:00
Paolo Tranquilli
3c064284b0
Rust: aggregate projects into workspaces
2025-01-15 17:17:19 +01:00
Arthur Baars
029e2604a3
Rust: //rust/codegen
2024-12-17 14:07:44 +01:00
Paolo Tranquilli
4c4a8d7619
Rust: extract isRef for SelfParam
2024-12-16 14:24:56 +01:00
Paolo Tranquilli
08de0b40ed
Merge branch 'main' into redsun82/rust-less-canonical-paths
2024-12-04 14:35:10 +01:00
Paolo Tranquilli
31b9b3adaa
Merge branch 'main' into redsun82/rust-perf-measures
2024-12-04 10:50:37 +01:00
Paolo Tranquilli
59ea563d2a
Merge branch 'main' into redsun82/rust-less-canonical-paths
2024-12-04 10:44:11 +01:00
Paolo Tranquilli
e30a429c3d
Rust: revert TupleStructPat.toString improvements
2024-12-04 10:34:28 +01:00
Paolo Tranquilli
53503002a1
Merge branch 'main' into redsun82/rust-tweaks
2024-12-04 09:35:01 +01:00
Paolo Tranquilli
353f1cafe6
Rust: distinguish [a, b] from [a; b]
...
This splits the `ArrayExpr` class into `ArrayListExpr` and `ArrayRepeatExpr`.
This uses the `synth.from_class` machinery to integrate seamlessly into the
generated code, by hiding the extracted `ArrayExpr` behind an internal class
and replacing it with a hierarchy of those two classes under a new
`ArrayExpr` class.
2024-12-03 15:09:20 +01:00
Paolo Tranquilli
db18d1046b
Rust: rename getTy -> getTypeRepr
2024-12-03 11:17:08 +01:00
Paolo Tranquilli
e89cf303e7
Rust: rename TypeRef -> TypeRepr
2024-12-02 17:58:40 +01:00
Paolo Tranquilli
b57a37479b
Rust: make File usable in codegen
2024-12-02 15:15:46 +01:00
Paolo Tranquilli
e7ffddd52c
Rust: rename all *Type to *TypeRef
2024-12-02 10:13:05 +01:00
Paolo Tranquilli
c46f44da5f
Rust: fix QL compilation errors
2024-11-29 15:55:51 +01:00
Paolo Tranquilli
9cf2420c3b
Rust: restrict canonical path calculations
2024-11-29 14:43:51 +01:00
Paolo Tranquilli
a8188598b0
Merge branch 'main' into redsun82/rust-canonical-enum
2024-11-27 15:01:47 +01:00
Simon Friis Vindum
d30f3e2822
Rust: Renamed expr on CallExpr and LetExpr
2024-11-26 15:22:14 +01:00
Paolo Tranquilli
8a01161d4a
Rust: rename MatchExpr.expr to scrutinee in all layers
...
This doesn't require `ql.name` and is simpler while we don't have
to write upgrade scripts. The `ql.name` mechanism might get useful
once we do have to write upgrade scripts, as that doesn't change the
dbscheme.
2024-11-26 10:42:13 +01:00
Paolo Tranquilli
adafe3e5b0
Merge branch 'main' into redsun82/rust-canonical-enum
2024-11-25 15:28:45 +01:00
Simon Friis Vindum
0d02126f12
Generate ParamBase, superclass of Param and SelfParam
2024-11-25 14:07:50 +01:00
Paolo Tranquilli
f3cd61f043
Rust: add extended canonical paths on enum variants
2024-11-22 17:00:57 +01:00
Paolo Tranquilli
b4af5a61d1
Rust: more advanced toString
2024-11-20 16:21:23 +01:00
Paolo Tranquilli
cee2ed0ec4
Rust: extract some resolved paths
2024-10-31 14:19:15 +01:00
Paolo Tranquilli
9c95a17882
Rust: add block ids to canonical paths, making them "extended"
2024-10-28 12:41:05 +01:00
Paolo Tranquilli
194e0daa8c
Rust: add canonical_path and crate_origin to Item
2024-10-25 16:58:04 +02:00
Arthur Baars
ca469f6d5c
Rust: introduce PathExprBase class
2024-10-24 15:14:07 +02:00
Paolo Tranquilli
248eb7f00c
Merge branch 'main' into rust/callable-base
2024-10-15 11:03:11 +02:00
Arthur Baars
b4bb24aa43
Merge remote-tracking branch 'upstream/main' into aibaars/rust-macros
2024-10-11 13:33:50 +02:00
Tom Hvitved
8cc349e85f
Rust: Run codegen
2024-10-11 12:01:16 +02:00
Paolo Tranquilli
f3bf347bd6
Merge branch 'main' into redsun82/codegen-annotate
2024-10-11 10:38:02 +02:00
Paolo Tranquilli
c66bd72620
Rust: rename to CallExprBase
2024-10-11 09:52:30 +02:00
Arthur Baars
0b3b95ab54
Rust: macro expansion
2024-10-10 15:19:47 +02:00