Commit Graph

1647 Commits

Author SHA1 Message Date
Geoffrey White
7170e97e22 Rust: Update test expectations format (type=...). 2025-06-19 13:09:28 +01:00
Geoffrey White
f670fcb301 Rust: Add a Vec test case that we actually get (explicit type). 2025-06-19 11:28:17 +01:00
Geoffrey White
1622d08624 Rust: Add inferArrayExprType. 2025-06-19 11:21:37 +01:00
Geoffrey White
639f85a556 Merge branch 'main' into typeinfer 2025-06-19 11:15:52 +01:00
Simon Friis Vindum
bea855abd7 Merge pull request #19789 from paldepind/rust/operator-borrowing
Rust: Account for borrows in operators in type inference
2025-06-19 11:33:56 +02:00
Tom Hvitved
519e56f752 Rust: Path resolution for crate::{self as foo} 2025-06-18 19:57:57 +02:00
Tom Hvitved
77a92c062b Rust: Add path resolution test 2025-06-18 19:55:33 +02:00
Geoffrey White
36cf4b613e Rust: Accept consistency changes. 2025-06-18 17:32:20 +01:00
Geoffrey White
5edd6e85e7 Rust: Restrict results to 'unsafe' blocks. 2025-06-18 15:45:31 +01:00
Geoffrey White
dbde8418bb Rust: Another test case (unsafe function). 2025-06-18 15:29:37 +01:00
Tom Hvitved
ee9ceb5066 Merge pull request #19790 from hvitved/rust/new-mad-format
Rust: Add new MaD format based on QL-computed canonical paths
2025-06-18 13:55:23 +02:00
Tom Hvitved
e5ef09a127 Merge pull request #19809 from hvitved/rust/jump-to-method-call
Rust: Extend jump-to-def query with method calls
2025-06-18 13:17:02 +02:00
Tom Hvitved
c88a5049e0 Rust: Fix column orders in interpretModelForTest 2025-06-18 13:15:36 +02:00
Tom Hvitved
63379df004 Rust: Add new MaD format based on QL-computed canonical paths 2025-06-18 12:14:36 +02:00
Tom Hvitved
c35598a2ea Rust: Add Deprecated suffix to existing MaD extensible predicates 2025-06-18 12:14:30 +02:00
Paolo Tranquilli
75616de613 Rust: make proc_macro test version also 0.0.1 2025-06-18 11:12:13 +02:00
Paolo Tranquilli
27eeaf25fd Rust: fix lock files 2025-06-18 10:47:44 +02:00
Paolo Tranquilli
b29ad5b12a Rust: add attribute macro expansion to path resolution test 2025-06-18 10:22:19 +02:00
Tom Hvitved
5cd729545d Rust: Extend jump-to-def query with method calls 2025-06-18 09:27:25 +02:00
Paolo Tranquilli
03599b43cb Merge branch 'main' into redsun82/rust-qltest-proc-macro 2025-06-18 09:01:28 +02:00
Geoffrey White
dec0deb4d1 Rust: Add some more test cases for type inference on Vecs. 2025-06-17 23:07:32 +01:00
Paolo Tranquilli
d2a05886c8 Rust: do not do html escaping in cargo template 2025-06-17 17:16:47 +02:00
Paolo Tranquilli
299fe2eb3f Rust: add proc-macro capabilities to QL tests
This adds the possibility to add a special `proc_macro.rs` source file
to QL tests, which will be generated into a `proc_macro` crate the
usual `lib` crate depends on.

This allow to define procedural macros in QL tests, and is here used to
move the `macro-expansion` integration test to be a language test
instead.

As the generated manifests involved were starting to get a bit complex,
they are now generated from a `mustache` template.
2025-06-17 16:58:33 +02:00
Tom Hvitved
433756debb Rust: Make SummarizedCallable extend Function instead of string 2025-06-17 14:12:38 +02:00
Geoffrey White
4292b03b5c Rust: Add logic for Vecs and slices. 2025-06-17 10:58:26 +01:00
Geoffrey White
66d6770c3f Rust: If we're inferring both ways, it should really be to any element. 2025-06-17 10:47:35 +01:00
Geoffrey White
69da4e7462 Rust: Move inferArrayExprType logic into typeEquality predicate. 2025-06-17 10:45:57 +01:00
Simon Friis Vindum
a0bc455d53 Rust: Account for borrows in operators in type inference 2025-06-17 10:34:41 +02:00
Simon Friis Vindum
cc234f2d19 Rust: Add a type inference test 2025-06-17 10:34:39 +02:00
Paolo Tranquilli
30ab9b7b84 Merge pull request #19772 from github/redsun82/rust-test-cargo-lock
Rust: add `Cargo.lock` files to all tests with `cargo check`
2025-06-16 12:21:30 +02:00
Paolo Tranquilli
8b98e2a559 Rust: accept test changes 2025-06-16 11:54:07 +02:00
Paolo Tranquilli
55096a31f2 Rust: add Cargo.lock files to all tests with cargo check 2025-06-16 10:52:53 +02:00
Simon Friis Vindum
8fe737ca52 Rust: Use defaults for type parameters 2025-06-16 09:54:01 +02:00
Simon Friis Vindum
1425bb8b08 Rust: Add type inference tests with default for type parameters 2025-06-16 09:52:38 +02:00
Paolo Tranquilli
2a51749a31 Merge pull request #19748 from github/redsun82/rust-models
Rust: regenerate models
2025-06-16 08:37:00 +02:00
Simon Friis Vindum
eacf034dde Rust: Disambiguate some method calls based on argument types 2025-06-13 15:43:39 +02:00
Simon Friis Vindum
d1aee7f704 Rust: Add type inference test 2025-06-13 15:42:08 +02:00
Tom Hvitved
6cca01662d Merge pull request #19755 from hvitved/rust/type-inference-operand-workaround
Rust: Temporarily disable type information to flow into operands
2025-06-13 15:25:34 +02:00
Geoffrey White
6194676b7d Rust: Accept consistency failures (for now). 2025-06-13 13:51:01 +01:00
Geoffrey White
62e3cc57c6 Merge branch 'main' into typeinfer 2025-06-13 13:45:19 +01:00
Tom Hvitved
5f4d588cd9 Rust: Temporarily disable type information to flow into operands 2025-06-13 14:21:02 +02:00
Geoffrey White
b89d6d3402 Rust: Implement type inference for ArrayRepeatExprs. 2025-06-13 12:58:51 +01:00
Geoffrey White
51343a5c03 Rust: Implement type inference for ArrayListExprs. 2025-06-13 12:58:49 +01:00
Geoffrey White
f76b56291b Rust: Implement type inference for 'for' loops on arrays. 2025-06-13 12:58:47 +01:00
Geoffrey White
840ef5ce92 Rust: Add test cases for type inference in loops. 2025-06-13 12:37:32 +01:00
Tom Hvitved
2f698d1590 Rust: Type inference for macro expressions 2025-06-13 13:11:11 +02:00
Tom Hvitved
fd59a27bd2 Rust: Add macro expr type inference test 2025-06-13 13:11:07 +02:00
Tom Hvitved
ad64e04475 Merge pull request #19737 from hvitved/rust/type-inference-string-str-deref
Rust: Model `String` -> `str` implicit conversion in type inference
2025-06-13 13:09:24 +02:00
Paolo Tranquilli
ff9ac3bb6f Rust: accept test changes 2025-06-13 11:56:12 +02:00
Tom Hvitved
66c0ff61bb Rust: Model String -> str implicit conversion in type inference 2025-06-13 11:32:23 +02:00