diff --git a/rust/ql/.generated.list b/rust/ql/.generated.list index f03cf69df07d..aa3ec5536da5 100644 --- a/rust/ql/.generated.list +++ b/rust/ql/.generated.list @@ -1,4 +1,4 @@ -lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll 06394c1314f09d65b8ade88732f1114202e1896ebeb8d687f8ee230cea01127b 7a9223854ec30cae886b237d7930120ce073ab49af486b0d3bc971df2a039e62 +lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll 11c7521ec2231a4d0447f30fc3d0bb14aebb659bd8cf75935af1050673a3b1d6 d0a77b572a032e43f1c47622315c0cdfe17e68c2b057534b9322fc528029fb40 lib/codeql/rust/elements/Abi.qll 485a2e79f6f7bfd1c02a6e795a71e62dede3c3e150149d5f8f18b761253b7208 6159ba175e7ead0dd2e3f2788f49516c306ee11b1a443bd4bdc00b7017d559bd lib/codeql/rust/elements/Addressable.qll 13011bfd2e1556694c3d440cc34af8527da4df49ad92b62f2939d3699ff2cea5 ddb25935f7553a1a384b1abe2e4b4fa90ab50b952dadec32fd867afcb054f4be lib/codeql/rust/elements/Adt.qll c2afed4ac2e17039ccd98f74ea22111f4d765c4e232c50ccd3128da0d26da837 1380bde2eb667c6ec2ef5f8710aa24e926851c9e321ebc72ba514fa92c369dc3 @@ -147,7 +147,7 @@ lib/codeql/rust/elements/Static.qll 9dca6d4fb80fb4ead49a3de89bec2b02bae6f96fbc26 lib/codeql/rust/elements/Stmt.qll 532b12973037301246daf7d8c0177f734202f43d9261c7a4ca6f5080eea8ca64 b838643c4f2b4623d2c816cddad0e68ca3e11f2879ab7beaece46f489ec4b1f3 lib/codeql/rust/elements/StmtList.qll e874859ce03672d0085e47e0ca5e571b92b539b31bf0d5a8802f9727bef0c6b0 e5fe83237f713cdb57c446a6e1c20f645c2f49d9f5ef2c984032df83acb3c0de lib/codeql/rust/elements/Struct.qll 297d3ea732fc7fbb8b8fb5479c1873ce84705146853ff752c84a6f70af12b923 3df0e5fd50a910a0b5611c3a860a1d7c318f6925c3a0727006d91840caf04812 -lib/codeql/rust/elements/StructExpr.qll af9059c01a97755e94f1a8b60c66d9c7663ed0705b2845b086b8953f16019fab 2d33d86b035a15c1b31c3e07e0e74c4bbe57a71c5a55d60e720827814e73b7ba +lib/codeql/rust/elements/StructExpr.qll 84f384ef74c723796e514186037a91dd9666556f62c717f133ce22e9dda4425f 176497835252cfdfe110e58ebde9fbde553d03e44e07d3e4d8041e835dbf31b9 lib/codeql/rust/elements/StructExprField.qll 3eb9f17ecd1ad38679689eb4ecc169d3a0b5b7a3fc597ae5a957a7aea2f74e4f 8fcd26f266f203004899a60447ba16e7eae4e3a654fbec7f54e26857730ede93 lib/codeql/rust/elements/StructExprFieldList.qll 6efb2ec4889b38556dc679bb89bbd4bd76ed6a60014c41f8e232288fc23b2d52 dc867a0a4710621e04b36bbec7d317d6f360e0d6ac68b79168c8b714babde31d lib/codeql/rust/elements/StructField.qll c43a552ce22c768c7f4c878501f08ecd4eae3554c5cd885dcd2e8625fe705233 bfd7934835ca41eb70e4064198d9b40ec9812842fb4349e412d1aaf98c3cd625 @@ -160,7 +160,7 @@ lib/codeql/rust/elements/TokenTree.qll 23e57fd945ce509df5122aa46f7971360788945cb lib/codeql/rust/elements/Trait.qll f78a917c2f2e5a0dfcd7c36e95ad67b1fa218484ee509610db8ca38453bebd4c 2a12f03870ebf86e104bdc3b61aae8512bfafbbf79a0cff5c3c27a04635926af lib/codeql/rust/elements/TraitAlias.qll 1d82d043f24dbac04baa7aa3882c6884b8ffbc5d9b97669ce8efb7e2c8d3d2c8 505ba5426e87b3c49721f440fbc9ad6b0e7d89d1b1a51ca3fa3a6cc2d36f8b82 lib/codeql/rust/elements/TryExpr.qll cb452f53292a1396139f64a35f05bb11501f6b363f8affc9f2d5f1945ad4a647 d60ad731bfe256d0f0b688bdc31708759a3d990c11dee4f1d85ccc0d9e07bec9 -lib/codeql/rust/elements/TupleExpr.qll 561486554f0c397bc37c87894c56507771174bfb25f19b3bf258a94f67573e56 d523246820853ff0a7c6b5f9dbe73d42513cadd6d6b76ea7e64147140ac93c15 +lib/codeql/rust/elements/TupleExpr.qll 1b1be270198f9d3db1c28c4caaa4a7fe9b5ae14651f1a10e2891a7d78d6ad18b 4f585aa684dfbff753e342903ddd60ee4d7c374b8bddeb645784d10903c90ae0 lib/codeql/rust/elements/TupleField.qll e20a991f7f1322cc7c05b2a8946d5017edb119812efa3e44daa94a5dff2d0c7b 8c25c9577fef8b5b9a4b285ceb7cfffcd8d89448035b1967cd7fda1503adfe13 lib/codeql/rust/elements/TupleFieldList.qll b67cd2dec918d09e582467e5db7a38c8fa18350af591b43a1b450cd2026dbb67 22fdd1e77c16e3be4627ee7a45985b94785492d36056eeeff2c94b43450b48c8 lib/codeql/rust/elements/TuplePat.qll 028cdea43868b0fdd2fc4c31ff25b6bbb40813e8aaccf72186051a280db7632e 38c56187971671e6a9dd0c6ccccb2ee4470aa82852110c6b89884496eb4abc64 @@ -409,7 +409,7 @@ lib/codeql/rust/elements/internal/TraitConstructor.qll 1f790e63c32f1a22ae1b039ca lib/codeql/rust/elements/internal/TryExprConstructor.qll 98e3077ebc4d76f687488b344f532b698512af215b66f0a74b5cea8ed180836c b95603c10c262911eeffdf4ccba14849e8443916b360e287963d5f2582d8e434 lib/codeql/rust/elements/internal/TryExprImpl.qll cacf43a49ba518be3f94e4a355f5889861edc41f77601eff27e0ed774eca6651 5f4a6a346ec457d5de89b32419e8b4c2deddc55e2d61dbb59842d7f34aa11c44 lib/codeql/rust/elements/internal/TupleExprConstructor.qll 71c38786723225d3d90399b8a085b2b2664c62256654db9e1288fadd56745b9d 639ad70b49ebadc027127fbdc9de14e5180169a4285908233bc38ccac6f14110 -lib/codeql/rust/elements/internal/TupleExprImpl.qll 23a0e4367fbcfcec3e2cf4a429f329a222b399c6729dd60f7ea42550273a6132 615f3b4897fdcbfddcf5c58e6edd64bf6e395923af89cc4e2a336099168bb6ad +lib/codeql/rust/elements/internal/TupleExprImpl.qll daabbc7dd36c615cdd8d3b59e06f4992a302b26554115711f733508836887abe 4c43a26e5f8b68d9d032bb5cd0af88cf9ac9b4b4e40af47dc85dd931ce9db6f8 lib/codeql/rust/elements/internal/TupleFieldConstructor.qll 89d3cf2540235044ed5a89706cfbdebc5cdf9180fd5b6d3376c79a1b2c0430c0 16861fe089aac8e42a5a90d81dd48d5015391d0a06c78ca02bd876d65378699f lib/codeql/rust/elements/internal/TupleFieldListConstructor.qll 4335ba2061b6e4968db9ec05c0b4d3e6a564db89a2df69e036f317672a7900b1 0b8dded875dbf696cf588e8c21acc27332a2ff66ced7bfabdfc1ad621991f888 lib/codeql/rust/elements/internal/TupleFieldListImpl.qll 74869e92a3cbdd7895adaaa418d29d5e97387daf46c17315f219ad967af15d76 5815e4b37db958663df1f6fedc9667a11b261c9c2133e3f983a3aedc452c01fc @@ -589,7 +589,7 @@ lib/codeql/rust/elements/internal/generated/PtrTypeRepr.qll 8d0ea4f6c7f8203340bf lib/codeql/rust/elements/internal/generated/PureSynthConstructors.qll e5b8e69519012bbaae29dcb82d53f7f7ecce368c0358ec27ef6180b228a0057f e5b8e69519012bbaae29dcb82d53f7f7ecce368c0358ec27ef6180b228a0057f lib/codeql/rust/elements/internal/generated/RangeExpr.qll 23cca03bf43535f33b22a38894f70d669787be4e4f5b8fe5c8f7b964d30e9027 18624cef6c6b679eeace2a98737e472432e0ead354cca02192b4d45330f047c9 lib/codeql/rust/elements/internal/generated/RangePat.qll 80826a6a6868a803aa2372e31c52a03e1811a3f1f2abdb469f91ca0bfdd9ecb6 34ee1e208c1690cba505dff2c588837c0cd91e185e2a87d1fe673191962276a9 -lib/codeql/rust/elements/internal/generated/Raw.qll a608725b53de8509b1b5f2a29e1636bda2e6baaa5d4218397f690f43f3c89011 6c09465d83f71e9e54917f2d4436eeb865c9abaf7a941e8a8cfc2faf29c794f4 +lib/codeql/rust/elements/internal/generated/Raw.qll b32f6737ca918cf003f294cc809546e3e89fa9f91666b20aab8acaa6fb986094 aeecf005da2fcfcc6e143c7970866f476f3b146632ed6bb36ccb5db19570c11b lib/codeql/rust/elements/internal/generated/RefExpr.qll 7d995884e3dc1c25fc719f5d7253179344d63650e217e9ff6530285fe7a57f64 f2c3c12551deea4964b66553fb9b6423ee16fec53bd63db4796191aa60dc6c66 lib/codeql/rust/elements/internal/generated/RefPat.qll 456ede39837463ee22a630ec7ab6c8630d3664a8ea206fcc6e4f199e92fa564c 5622062765f32930465ba6b170e986706f159f6070f48adee3c20e24e8df4e05 lib/codeql/rust/elements/internal/generated/RefTypeRepr.qll 5b0663a6d234572fb3e467e276d019415caa95ef006438cc59b7af4e1783161e 0e27c8a8f0e323c0e4d6db01fca821bf07c0864d293cdf96fa891b10820c1e4b @@ -607,7 +607,7 @@ lib/codeql/rust/elements/internal/generated/Static.qll 1a6c87d3c5602e3d02268ebe2 lib/codeql/rust/elements/internal/generated/Stmt.qll 8473ff532dd5cc9d7decaddcd174b94d610f6ca0aec8e473cc051dad9f3db917 6ef7d2b5237c2dbdcacbf7d8b39109d4dc100229f2b28b5c9e3e4fbf673ba72b lib/codeql/rust/elements/internal/generated/StmtList.qll 816aebf8f56e179f5f0ba03e80d257ee85459ea757392356a0af6dbd0cd9ef5e 6aa51cdcdc8d93427555fa93f0e84afdfbbd4ffc8b8d378ae4a22b5b6f94f48b lib/codeql/rust/elements/internal/generated/Struct.qll 999da1b46e40d6e03fd2338fea02429462877c329c5d1338618cbd886a81567e daa7ff7bd32c554462e0a1502d8319cb5e734e056d0564e06596e416e2b88e9d -lib/codeql/rust/elements/internal/generated/StructExpr.qll c6d861eaa0123b103fd9ffd2485423419ef9b7e0b4af9ed2a2090d8ec534f65d 50da99ee44771e1239ed8919f711991dd3ec98589fbe49b49b68c88074a07d74 +lib/codeql/rust/elements/internal/generated/StructExpr.qll e77702890561102af38f52d836729e82569c964f8d4c7e680b27992c1ff0f141 23dc51f68107ab0e5c9dd88a6bcc85bb66e8e0f4064cb4d416f50f2ba5db698c lib/codeql/rust/elements/internal/generated/StructExprField.qll 6bdc52ed325fd014495410c619536079b8c404e2247bd2435aa7685dd56c3833 501a30650cf813176ff325a1553da6030f78d14be3f84fea6d38032f4262c6b0 lib/codeql/rust/elements/internal/generated/StructExprFieldList.qll 298d33442d1054922d2f97133a436ee559f1f35b7708523284d1f7eee7ebf443 7febe38a79fadf3dcb53fb8f8caf4c2780f5df55a1f8336269c7b674d53c6272 lib/codeql/rust/elements/internal/generated/StructField.qll 0ccd678b64b82fdab7ffe9eb74f0d393b22da4459fe72248828896b5204c009c 0faf5a517eccc43141a48809ed35b864341a35764de2dba7442daa899ff4ff69 @@ -622,7 +622,7 @@ lib/codeql/rust/elements/internal/generated/TokenTree.qll 1a3c4f5f30659738641abd lib/codeql/rust/elements/internal/generated/Trait.qll 8fa41b50fa0f68333534f2b66bb4ec8e103ff09ac8fa5c2cc64bc04beafec205 ce1c9aa6d0e2f05d28aab8e1165c3b9fb8e24681ade0cf6a9df2e8617abeae7e lib/codeql/rust/elements/internal/generated/TraitAlias.qll 40a296cf89eceaf02a32db90acb42bdc90df10e717bae3ab95bc09d842360a5b af85cf1f8fa46a8b04b763cdcacc6643b83c074c58c1344e485157d2ceb26306 lib/codeql/rust/elements/internal/generated/TryExpr.qll 73052d7d309427a30019ad962ee332d22e7e48b9cc98ee60261ca2df2f433f93 d9dd70bf69eaa22475acd78bea504341e3574742a51ad9118566f39038a02d85 -lib/codeql/rust/elements/internal/generated/TupleExpr.qll 75186da7c077287b9a86fc9194221ab565d458c08a5f80b763e73be5b646b29f 0250d75c43e2e6f56cdc8a0c00cc42b3d459ea8d48172d236c8cdf0fe96dfed2 +lib/codeql/rust/elements/internal/generated/TupleExpr.qll 98f10bc72d09f98e3be87f41b1a3cbf037f4a7e3d3560dfa6d5759905a8177a5 6a9eb5568c518876b2912371e2b7b774cf5245097c5a0206eda35b749995f00b lib/codeql/rust/elements/internal/generated/TupleField.qll d546b4e0c1a0b243c2bf88b371377cf9a396ca497cd5e78915e0e552910b6093 c0a754d15e0de590ee15139d8d366e4d7e4d33882c943e6ea8fa5fa8dce790e3 lib/codeql/rust/elements/internal/generated/TupleFieldList.qll fb76d1a395326361859177c05e90e5bbb22d37518758752e9d89906006fb683e f31508b120c36f569cc7dcae06c9e55cf875abfb2fbe54a64ec12d8b3d2db108 lib/codeql/rust/elements/internal/generated/TuplePat.qll 4e13b509e1c9dd1581a9dc50d38e0a6e36abc1254ea9c732b5b3e6503335afeb 298028df9eb84e106e625ed09d6b20038ad47bfc2faf634a0ffea50b17b5805d diff --git a/rust/ql/lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll b/rust/ql/lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll index 811ddf4978a1..9ce771983a3f 100644 --- a/rust/ql/lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll +++ b/rust/ql/lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll @@ -2944,8 +2944,8 @@ module MakeCfgNodes Input> { * ```rust * let first = Foo { a: 1, b: 2 }; * let second = Foo { a: 2, ..first }; - * Foo { a: 1, b: 2 }[2] = 10; - * Foo { .. } = second; + * let n = Foo { a: 1, b: 2 }.b; + * Foo { a: m, .. } = second; * ``` */ final class StructExprCfgNode extends CfgNodeFinal, ExprCfgNode { @@ -3063,8 +3063,9 @@ module MakeCfgNodes Input> { /** * A tuple expression. For example: * ```rust - * (1, "one"); - * (2, "two")[0] = 3; + * let tuple = (1, "one"); + * let n = (2, "two").0; + * let (a, b) = tuple; * ``` */ final class TupleExprCfgNode extends CfgNodeFinal, ExprCfgNode { diff --git a/rust/ql/lib/codeql/rust/elements/StructExpr.qll b/rust/ql/lib/codeql/rust/elements/StructExpr.qll index ededc485eb65..dfb1ae4f819a 100644 --- a/rust/ql/lib/codeql/rust/elements/StructExpr.qll +++ b/rust/ql/lib/codeql/rust/elements/StructExpr.qll @@ -13,8 +13,8 @@ import codeql.rust.elements.StructExprFieldList * ```rust * let first = Foo { a: 1, b: 2 }; * let second = Foo { a: 2, ..first }; - * Foo { a: 1, b: 2 }[2] = 10; - * Foo { .. } = second; + * let n = Foo { a: 1, b: 2 }.b; + * Foo { a: m, .. } = second; * ``` */ final class StructExpr = Impl::StructExpr; diff --git a/rust/ql/lib/codeql/rust/elements/TupleExpr.qll b/rust/ql/lib/codeql/rust/elements/TupleExpr.qll index e66d46957fc7..471abb51a3b2 100644 --- a/rust/ql/lib/codeql/rust/elements/TupleExpr.qll +++ b/rust/ql/lib/codeql/rust/elements/TupleExpr.qll @@ -10,8 +10,9 @@ import codeql.rust.elements.Expr /** * A tuple expression. For example: * ```rust - * (1, "one"); - * (2, "two")[0] = 3; + * let tuple = (1, "one"); + * let n = (2, "two").0; + * let (a, b) = tuple; * ``` */ final class TupleExpr = Impl::TupleExpr; diff --git a/rust/ql/lib/codeql/rust/elements/internal/StructExprImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/StructExprImpl.qll index 4e45ed845bd5..5cbeb62c7a4a 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/StructExprImpl.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/StructExprImpl.qll @@ -20,8 +20,8 @@ module Impl { * ```rust * let first = Foo { a: 1, b: 2 }; * let second = Foo { a: 2, ..first }; - * Foo { a: 1, b: 2 }[2] = 10; - * Foo { .. } = second; + * let n = Foo { a: 1, b: 2 }.b; + * Foo { a: m, .. } = second; * ``` */ class StructExpr extends Generated::StructExpr { diff --git a/rust/ql/lib/codeql/rust/elements/internal/TupleExprImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/TupleExprImpl.qll index eead8bd32ef6..df818859d879 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/TupleExprImpl.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/TupleExprImpl.qll @@ -15,8 +15,9 @@ module Impl { /** * A tuple expression. For example: * ```rust - * (1, "one"); - * (2, "two")[0] = 3; + * let tuple = (1, "one"); + * let n = (2, "two").0; + * let (a, b) = tuple; * ``` */ class TupleExpr extends Generated::TupleExpr { } diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/Raw.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/Raw.qll index 3b8860b6f7c2..bc07329dbcd0 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/Raw.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/Raw.qll @@ -3324,8 +3324,9 @@ module Raw { * INTERNAL: Do not use. * A tuple expression. For example: * ```rust - * (1, "one"); - * (2, "two")[0] = 3; + * let tuple = (1, "one"); + * let n = (2, "two").0; + * let (a, b) = tuple; * ``` */ class TupleExpr extends @tuple_expr, Expr { @@ -4030,8 +4031,8 @@ module Raw { * ```rust * let first = Foo { a: 1, b: 2 }; * let second = Foo { a: 2, ..first }; - * Foo { a: 1, b: 2 }[2] = 10; - * Foo { .. } = second; + * let n = Foo { a: 1, b: 2 }.b; + * Foo { a: m, .. } = second; * ``` */ class StructExpr extends @struct_expr, Expr, PathAstNode { diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/StructExpr.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/StructExpr.qll index c4da706e2777..c9fbacd72686 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/StructExpr.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/StructExpr.qll @@ -20,8 +20,8 @@ module Generated { * ```rust * let first = Foo { a: 1, b: 2 }; * let second = Foo { a: 2, ..first }; - * Foo { a: 1, b: 2 }[2] = 10; - * Foo { .. } = second; + * let n = Foo { a: 1, b: 2 }.b; + * Foo { a: m, .. } = second; * ``` * INTERNAL: Do not reference the `Generated::StructExpr` class directly. * Use the subclass `StructExpr`, where the following predicates are available. diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/TupleExpr.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/TupleExpr.qll index 0860831446ba..9a3b414dda0e 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/TupleExpr.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/TupleExpr.qll @@ -18,8 +18,9 @@ module Generated { /** * A tuple expression. For example: * ```rust - * (1, "one"); - * (2, "two")[0] = 3; + * let tuple = (1, "one"); + * let n = (2, "two").0; + * let (a, b) = tuple; * ``` * INTERNAL: Do not reference the `Generated::TupleExpr` class directly. * Use the subclass `TupleExpr`, where the following predicates are available. diff --git a/rust/ql/test/extractor-tests/generated/.generated_tests.list b/rust/ql/test/extractor-tests/generated/.generated_tests.list index f23ccd30563b..c0e2d095be66 100644 --- a/rust/ql/test/extractor-tests/generated/.generated_tests.list +++ b/rust/ql/test/extractor-tests/generated/.generated_tests.list @@ -116,7 +116,7 @@ SourceFile/gen_source_file.rs c0469cc8f0ecce3dd2e77963216d7e8808046014533359a44c Static/gen_static.rs 21314018ea184c1ddcb594d67bab97ae18ceaf663d9f120f39ff755d389dde7a 21314018ea184c1ddcb594d67bab97ae18ceaf663d9f120f39ff755d389dde7a StmtList/gen_stmt_list.rs adbd82045a50e2051434ce3cdd524c9f2c6ad9f3dd02b4766fb107e2e99212db adbd82045a50e2051434ce3cdd524c9f2c6ad9f3dd02b4766fb107e2e99212db Struct/gen_struct.rs 5e181e90075f716c04c75e4ef0334abe3d5f419cd9ccfadfe595c09fab33566b 5e181e90075f716c04c75e4ef0334abe3d5f419cd9ccfadfe595c09fab33566b -StructExpr/gen_struct_expr.rs 8dd9a578625a88623c725b8afdfd8b636e1c3c991fe96c55b24d4b283d2212fb 8dd9a578625a88623c725b8afdfd8b636e1c3c991fe96c55b24d4b283d2212fb +StructExpr/gen_struct_expr.rs e7824008b0b73d02f6243fd8a18e0ef93c63bfe775a878fc2679c3870fc342fd e7824008b0b73d02f6243fd8a18e0ef93c63bfe775a878fc2679c3870fc342fd StructExprField/gen_struct_expr_field.rs 4ccca8e8ad462b4873f5604f0afdd1836027b8d39e36fbe7d6624ef3e744a084 4ccca8e8ad462b4873f5604f0afdd1836027b8d39e36fbe7d6624ef3e744a084 StructExprFieldList/gen_struct_expr_field_list.rs bc17e356690cfb1cd51f7dbe5ac88c0b9188c9bf94b9e3cc82581120190f33dc bc17e356690cfb1cd51f7dbe5ac88c0b9188c9bf94b9e3cc82581120190f33dc StructField/gen_struct_field.rs 0884e458732ab74b4c7debee4fbef014f847815be5a6ddeba467844d33607c6e 0884e458732ab74b4c7debee4fbef014f847815be5a6ddeba467844d33607c6e @@ -128,7 +128,7 @@ TokenTree/gen_token_tree.rs 3fdc9a36a1870bb2bedf66c8fe37d368f4ac18488e7118b86e39 Trait/gen_trait.rs bac694993e224f9c6dd86cfb28c54846ae1b3bae45a1e58d3149c884184487ea bac694993e224f9c6dd86cfb28c54846ae1b3bae45a1e58d3149c884184487ea TraitAlias/gen_trait_alias.rs 425d78a7cb87db7737ceaf713c9a62e0411537374d1bc58c5b1fb80cc25732c9 425d78a7cb87db7737ceaf713c9a62e0411537374d1bc58c5b1fb80cc25732c9 TryExpr/gen_try_expr.rs f60198181a423661f4ed1bf6f98d475f40ada190b7b5fc6af97aa5e45ca29a1e f60198181a423661f4ed1bf6f98d475f40ada190b7b5fc6af97aa5e45ca29a1e -TupleExpr/gen_tuple_expr.rs 8ecd1b6ecc58a0319eed434a423cc6f41bdf1901b1950e6e79735d7f7b2f8374 8ecd1b6ecc58a0319eed434a423cc6f41bdf1901b1950e6e79735d7f7b2f8374 +TupleExpr/gen_tuple_expr.rs 27e56846b3f08c37c8a345169c2a532b2023d231d46a5bdf586bbc6d8fb36a01 27e56846b3f08c37c8a345169c2a532b2023d231d46a5bdf586bbc6d8fb36a01 TupleField/gen_tuple_field.rs 5d6b4f356af895541f975cc1fd90116fd047fe914c2049d47f61e4a43a8c2af4 5d6b4f356af895541f975cc1fd90116fd047fe914c2049d47f61e4a43a8c2af4 TupleFieldList/gen_tuple_field_list.rs 42f0af8c391fb9e33fe09b791e0e719cadf5143b58764f8a5d38f8d9054daca7 42f0af8c391fb9e33fe09b791e0e719cadf5143b58764f8a5d38f8d9054daca7 TuplePat/gen_tuple_pat.rs b1b0c9c5ff1b787f380644691c77807655a4f6441fc7431c90ecf78c54c26148 b1b0c9c5ff1b787f380644691c77807655a4f6441fc7431c90ecf78c54c26148 diff --git a/rust/ql/test/extractor-tests/generated/StructExpr/StructExpr.expected b/rust/ql/test/extractor-tests/generated/StructExpr/StructExpr.expected index 477aa732ece0..23e4e3e49171 100644 --- a/rust/ql/test/extractor-tests/generated/StructExpr/StructExpr.expected +++ b/rust/ql/test/extractor-tests/generated/StructExpr/StructExpr.expected @@ -1,17 +1,17 @@ instances | gen_struct_expr.rs:5:17:5:34 | Foo {...} | | gen_struct_expr.rs:6:18:6:38 | Foo {...} | -| gen_struct_expr.rs:7:5:7:22 | Foo {...} | -| gen_struct_expr.rs:8:5:8:14 | Foo {...} | +| gen_struct_expr.rs:7:13:7:30 | Foo {...} | +| gen_struct_expr.rs:8:5:8:20 | Foo {...} | getResolvedPath getResolvedCrateOrigin getPath | gen_struct_expr.rs:5:17:5:34 | Foo {...} | gen_struct_expr.rs:5:17:5:19 | Foo | | gen_struct_expr.rs:6:18:6:38 | Foo {...} | gen_struct_expr.rs:6:18:6:20 | Foo | -| gen_struct_expr.rs:7:5:7:22 | Foo {...} | gen_struct_expr.rs:7:5:7:7 | Foo | -| gen_struct_expr.rs:8:5:8:14 | Foo {...} | gen_struct_expr.rs:8:5:8:7 | Foo | +| gen_struct_expr.rs:7:13:7:30 | Foo {...} | gen_struct_expr.rs:7:13:7:15 | Foo | +| gen_struct_expr.rs:8:5:8:20 | Foo {...} | gen_struct_expr.rs:8:5:8:7 | Foo | getStructExprFieldList | gen_struct_expr.rs:5:17:5:34 | Foo {...} | gen_struct_expr.rs:5:21:5:34 | StructExprFieldList | | gen_struct_expr.rs:6:18:6:38 | Foo {...} | gen_struct_expr.rs:6:22:6:38 | StructExprFieldList | -| gen_struct_expr.rs:7:5:7:22 | Foo {...} | gen_struct_expr.rs:7:9:7:22 | StructExprFieldList | -| gen_struct_expr.rs:8:5:8:14 | Foo {...} | gen_struct_expr.rs:8:9:8:14 | StructExprFieldList | +| gen_struct_expr.rs:7:13:7:30 | Foo {...} | gen_struct_expr.rs:7:17:7:30 | StructExprFieldList | +| gen_struct_expr.rs:8:5:8:20 | Foo {...} | gen_struct_expr.rs:8:9:8:20 | StructExprFieldList | diff --git a/rust/ql/test/extractor-tests/generated/StructExpr/gen_struct_expr.rs b/rust/ql/test/extractor-tests/generated/StructExpr/gen_struct_expr.rs index 7e43d1000511..680c9dac9cfd 100644 --- a/rust/ql/test/extractor-tests/generated/StructExpr/gen_struct_expr.rs +++ b/rust/ql/test/extractor-tests/generated/StructExpr/gen_struct_expr.rs @@ -4,6 +4,6 @@ fn test_struct_expr() -> () { // A struct expression. For example: let first = Foo { a: 1, b: 2 }; let second = Foo { a: 2, ..first }; - Foo { a: 1, b: 2 }[2] = 10; - Foo { .. } = second; + let n = Foo { a: 1, b: 2 }.b; + Foo { a: m, .. } = second; } diff --git a/rust/ql/test/extractor-tests/generated/TupleExpr/TupleExpr.expected b/rust/ql/test/extractor-tests/generated/TupleExpr/TupleExpr.expected index 3a35afd6630d..aac93393b5fc 100644 --- a/rust/ql/test/extractor-tests/generated/TupleExpr/TupleExpr.expected +++ b/rust/ql/test/extractor-tests/generated/TupleExpr/TupleExpr.expected @@ -1,9 +1,9 @@ instances -| gen_tuple_expr.rs:5:5:5:14 | TupleExpr | -| gen_tuple_expr.rs:6:5:6:14 | TupleExpr | +| gen_tuple_expr.rs:5:17:5:26 | TupleExpr | +| gen_tuple_expr.rs:6:13:6:22 | TupleExpr | getAttr getField -| gen_tuple_expr.rs:5:5:5:14 | TupleExpr | 0 | gen_tuple_expr.rs:5:6:5:6 | 1 | -| gen_tuple_expr.rs:5:5:5:14 | TupleExpr | 1 | gen_tuple_expr.rs:5:9:5:13 | "one" | -| gen_tuple_expr.rs:6:5:6:14 | TupleExpr | 0 | gen_tuple_expr.rs:6:6:6:6 | 2 | -| gen_tuple_expr.rs:6:5:6:14 | TupleExpr | 1 | gen_tuple_expr.rs:6:9:6:13 | "two" | +| gen_tuple_expr.rs:5:17:5:26 | TupleExpr | 0 | gen_tuple_expr.rs:5:18:5:18 | 1 | +| gen_tuple_expr.rs:5:17:5:26 | TupleExpr | 1 | gen_tuple_expr.rs:5:21:5:25 | "one" | +| gen_tuple_expr.rs:6:13:6:22 | TupleExpr | 0 | gen_tuple_expr.rs:6:14:6:14 | 2 | +| gen_tuple_expr.rs:6:13:6:22 | TupleExpr | 1 | gen_tuple_expr.rs:6:17:6:21 | "two" | diff --git a/rust/ql/test/extractor-tests/generated/TupleExpr/gen_tuple_expr.rs b/rust/ql/test/extractor-tests/generated/TupleExpr/gen_tuple_expr.rs index 7aa2b235a804..f9f5cf49c3d6 100644 --- a/rust/ql/test/extractor-tests/generated/TupleExpr/gen_tuple_expr.rs +++ b/rust/ql/test/extractor-tests/generated/TupleExpr/gen_tuple_expr.rs @@ -2,6 +2,7 @@ fn test_tuple_expr() -> () { // A tuple expression. For example: - (1, "one"); - (2, "two")[0] = 3; + let tuple = (1, "one"); + let n = (2, "two").0; + let (a, b) = tuple; } diff --git a/rust/schema/annotations.py b/rust/schema/annotations.py index 7313255b1447..eb2eb8af743e 100644 --- a/rust/schema/annotations.py +++ b/rust/schema/annotations.py @@ -434,8 +434,8 @@ class _: ```rust let first = Foo { a: 1, b: 2 }; let second = Foo { a: 2, ..first }; - Foo { a: 1, b: 2 }[2] = 10; - Foo { .. } = second; + let n = Foo { a: 1, b: 2 }.b; + Foo { a: m, .. } = second; ``` """ path: drop @@ -563,8 +563,9 @@ class _: """ A tuple expression. For example: ```rust - (1, "one"); - (2, "two")[0] = 3; + let tuple = (1, "one"); + let n = (2, "two").0; + let (a, b) = tuple; ``` """