diff --git a/Cargo.lock b/Cargo.lock index 65a77b316c9d..e44c064e7121 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -116,9 +116,11 @@ checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" name = "ast-generator" version = "0.1.0" dependencies = [ - "itertools 0.10.5", + "either", + "itertools 0.12.1", "proc-macro2", "quote", + "ra_ap_stdx", "ungrammar", ] @@ -155,6 +157,15 @@ version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" +[[package]] +name = "borsh" +version = "1.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2506947f73ad44e344215ccd6403ac2ae18cd8e046e581a441bf8d199f257f03" +dependencies = [ + "cfg_aliases", +] + [[package]] name = "bstr" version = "1.10.0" @@ -230,6 +241,12 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" + [[package]] name = "chalk-derive" version = "0.98.0" @@ -261,7 +278,7 @@ dependencies = [ "chalk-derive", "chalk-ir", "chalk-solve", - "rustc-hash", + "rustc-hash 1.1.0", "tracing", ] @@ -277,7 +294,7 @@ dependencies = [ "indexmap 2.6.0", "itertools 0.12.1", "petgraph", - "rustc-hash", + "rustc-hash 1.1.0", "tracing", ] @@ -887,15 +904,6 @@ version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" -[[package]] -name = "itertools" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" -dependencies = [ - "either", -] - [[package]] name = "itertools" version = "0.12.1" @@ -1286,9 +1294,9 @@ dependencies = [ [[package]] name = "ra-ap-rustc_abi" -version = "0.63.0" +version = "0.80.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b011c39d409940a890414e3a7b239762ac16d88029ad71b050a8374831b93790" +checksum = "613760a3071b25a67a8d7bc97b37c7fd4722562e9479137b83ae9cf8f8c1601a" dependencies = [ "bitflags 2.6.0", "ra-ap-rustc_index", @@ -1297,9 +1305,9 @@ dependencies = [ [[package]] name = "ra-ap-rustc_index" -version = "0.63.0" +version = "0.80.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9027acdee649b0b27eb10b7db5be833efee3362d394935c5eed8f0745a9d43ce" +checksum = "5b2bc6b4ecede8ff28295041e22c2e66853f8e0125990c05135bad3c30bad12c" dependencies = [ "arrayvec", "ra-ap-rustc_index_macros", @@ -1308,9 +1316,9 @@ dependencies = [ [[package]] name = "ra-ap-rustc_index_macros" -version = "0.63.0" +version = "0.80.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "540b86dc0384141ac8e825fc2874cd44bffd4277d99d8ec63ee416f1a98d5997" +checksum = "2374a39fb2d92d0509178c2b442eadca3cc10e403ef9729a040c1855b08ff261" dependencies = [ "proc-macro2", "quote", @@ -1319,9 +1327,9 @@ dependencies = [ [[package]] name = "ra-ap-rustc_lexer" -version = "0.63.0" +version = "0.80.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bdf98bb457b47b9ae4aeebf867d0ca440c86925e0b6381658c4a02589748c9d" +checksum = "5a2cf8e48b69af3ecc29ed3449892e8a999111d2f75212a78aa242e117cf1711" dependencies = [ "unicode-properties", "unicode-xid", @@ -1329,9 +1337,9 @@ dependencies = [ [[package]] name = "ra-ap-rustc_parse_format" -version = "0.63.0" +version = "0.80.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8fe3556ab6311bb775220563a300e2bf62ec56404521fe0c511a583937683d5" +checksum = "8d6f59a22b559263c5c42747ae362cf5d4fb272293fa119a4623f8ec288f9656" dependencies = [ "ra-ap-rustc_index", "ra-ap-rustc_lexer", @@ -1339,12 +1347,12 @@ dependencies = [ [[package]] name = "ra-ap-rustc_pattern_analysis" -version = "0.63.0" +version = "0.80.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1709080fdeb5db630e1c2644026c2962aaa32416cd92f0190c04b0c21e114b91" +checksum = "a7d0575b54ffe09bc5d2f158454bc05f0c30c01d9992310965f854be50ae22b8" dependencies = [ "ra-ap-rustc_index", - "rustc-hash", + "rustc-hash 2.1.0", "rustc_apfloat", "smallvec", "tracing", @@ -1352,9 +1360,9 @@ dependencies = [ [[package]] name = "ra_ap_base_db" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bcb25fbab872d3f85798739db011212a98444e55163d71edb1dfdb509e616b3" +checksum = "321b770750ff90b03af539ac6d47ca46208f6f747be97c0a4aaca3a428447c8f" dependencies = [ "la-arena", "lz4_flex", @@ -1365,7 +1373,7 @@ dependencies = [ "ra_ap_stdx", "ra_ap_syntax", "ra_ap_vfs", - "rustc-hash", + "rustc-hash 2.1.0", "semver", "tracing", "triomphe", @@ -1373,20 +1381,21 @@ dependencies = [ [[package]] name = "ra_ap_cfg" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbec14556d01bf34fb795d70941f929ed4c024dee11be9c99c712ea92225a20b" +checksum = "5023f50ebcf3656d85b96565dac56d50cc3e3d959c41592f457d2230d7be706a" dependencies = [ "ra_ap_intern", "ra_ap_tt", - "rustc-hash", + "rustc-hash 2.1.0", + "tracing", ] [[package]] name = "ra_ap_hir" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7c38520eb4770af561c34b908431f4e548c3282093cf3daf3c6e566d99a2937" +checksum = "d07a9a085cf581d5f503aa467d32bbd1e5e7f94a3e86f881ca9c19b379570c62" dependencies = [ "arrayvec", "either", @@ -1401,7 +1410,7 @@ dependencies = [ "ra_ap_stdx", "ra_ap_syntax", "ra_ap_tt", - "rustc-hash", + "rustc-hash 2.1.0", "smallvec", "tracing", "triomphe", @@ -1409,9 +1418,9 @@ dependencies = [ [[package]] name = "ra_ap_hir_def" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f00b546cacca816b94a12d51df076d50965d6bae411fd68f9024420bfa026e7b" +checksum = "825c47fec7aab22c38ad9eba1d76102a95a6eb089e85b4e58308089d056c3cdc" dependencies = [ "arrayvec", "bitflags 2.6.0", @@ -1436,18 +1445,19 @@ dependencies = [ "ra_ap_stdx", "ra_ap_syntax", "ra_ap_tt", - "rustc-hash", + "rustc-hash 2.1.0", "rustc_apfloat", "smallvec", + "text-size", "tracing", "triomphe", ] [[package]] name = "ra_ap_hir_expand" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c9675e1331dadf43cbc807ae39d2c289b8ba2af33a8e197c0927d926a6610d" +checksum = "1084b708f90de31888deb6e7f9cda5ebb8e6a59484143a3df0a4007dcf496b17" dependencies = [ "cov-mark", "either", @@ -1465,7 +1475,7 @@ dependencies = [ "ra_ap_syntax", "ra_ap_syntax-bridge", "ra_ap_tt", - "rustc-hash", + "rustc-hash 2.1.0", "smallvec", "tracing", "triomphe", @@ -1473,9 +1483,9 @@ dependencies = [ [[package]] name = "ra_ap_hir_ty" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e308aa1b956137c82547a8b46eb60c6ee295628322e00aa5266a1ea5ea8e522e" +checksum = "400a42e442b6d8f64adea48a8c9e39f76a1b9ed9964fd40222bd2d7cfe0a5a79" dependencies = [ "arrayvec", "bitflags 2.6.0", @@ -1502,7 +1512,7 @@ dependencies = [ "ra_ap_span", "ra_ap_stdx", "ra_ap_syntax", - "rustc-hash", + "rustc-hash 2.1.0", "rustc_apfloat", "scoped-tls", "smallvec", @@ -1513,9 +1523,9 @@ dependencies = [ [[package]] name = "ra_ap_ide_db" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95ea9c17702025001c1672ab23bf9be3cf40785376c0f368a10fe812db1327eb" +checksum = "d4ced45b107a8f4c1a4cee68b270d08832327b34ad0bf7794879342ac280bc8b" dependencies = [ "arrayvec", "bitflags 2.6.0", @@ -1536,37 +1546,36 @@ dependencies = [ "ra_ap_span", "ra_ap_stdx", "ra_ap_syntax", - "ra_ap_text_edit", "rayon", - "rustc-hash", + "rustc-hash 2.1.0", "tracing", "triomphe", ] [[package]] name = "ra_ap_intern" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78e0928f2c403ebea95f97a38a720900216ea896212347e893a37ae7c1419030" +checksum = "e5432d6cf7382c06dab31b6c1772446c8576dd19fcbc007bc8a6fd8bca3d424d" dependencies = [ "dashmap", "hashbrown 0.14.5", - "rustc-hash", + "rustc-hash 2.1.0", "sptr", "triomphe", ] [[package]] name = "ra_ap_limit" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60972e02e4dfe05b2755e09a6b11b27db8a47cea01cd2697e77a34c4cf60b31c" +checksum = "822501c9f88830865ebedf944130dbe0603fa8d30a5da90f3224c1dcca2660de" [[package]] name = "ra_ap_load-cargo" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82e6f24b61f1ef1f3a756493d1fb7e711b69b2e4d5f4746fcb959313dfd41471" +checksum = "2d5b002bcda197a4e9442c827dc86305d8fc1820fbbcb9814ff9bbc2c50f4e9c" dependencies = [ "anyhow", "crossbeam-channel", @@ -1586,12 +1595,13 @@ dependencies = [ [[package]] name = "ra_ap_mbe" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "714a0997373ff65e7748e7768186598c6831e95f71639f66c3f79ef591c9d496" +checksum = "b4fce40b490b6bbca3d033f4cbf32ef07069423aa3edc1e00ec26ddabf503866" dependencies = [ "arrayvec", "cov-mark", + "ra-ap-rustc_lexer", "ra_ap_intern", "ra_ap_parser", "ra_ap_span", @@ -1599,16 +1609,16 @@ dependencies = [ "ra_ap_syntax", "ra_ap_syntax-bridge", "ra_ap_tt", - "rustc-hash", + "rustc-hash 2.1.0", "smallvec", "tracing", ] [[package]] name = "ra_ap_parser" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8da0314db93eabbd2b92e13907690782688cfc8aaaf42b8e6726e7f5b338c2e3" +checksum = "573c14046174e3ef03a9d73841dbc52fd1d6224fffd1a0713aef95b45e024f75" dependencies = [ "drop_bomb", "ra-ap-rustc_lexer", @@ -1618,9 +1628,9 @@ dependencies = [ [[package]] name = "ra_ap_paths" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cc084003225204a9e5e50957a565f1cc23ebef18cd779f31563a8d2180f8940" +checksum = "57aa6e3d7c45806434cdee09aa74b561723552732e8b089213fe821ae84404ec" dependencies = [ "camino", "serde", @@ -1628,9 +1638,9 @@ dependencies = [ [[package]] name = "ra_ap_proc_macro_api" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "809670622e93f105abc60ea0cb371cfaff990beae7ce534b127fb39b423b4b92" +checksum = "79d9595e05b422f3258c51f9a529129c9a59f99037deac652ff2cdd0c97e0bda" dependencies = [ "indexmap 2.6.0", "ra_ap_base_db", @@ -1639,7 +1649,7 @@ dependencies = [ "ra_ap_span", "ra_ap_stdx", "ra_ap_tt", - "rustc-hash", + "rustc-hash 2.1.0", "serde", "serde_json", "tracing", @@ -1647,9 +1657,9 @@ dependencies = [ [[package]] name = "ra_ap_profile" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "572193d698a8bc4245463688d10f20932ab04940d5b6c32be457bc45dc1e6ab0" +checksum = "459551d7e5a6dda9204c3741215c1f6a97cf6f4553e3c29294f7f8ac0ec91f57" dependencies = [ "cfg-if", "libc", @@ -1659,9 +1669,9 @@ dependencies = [ [[package]] name = "ra_ap_project_model" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db83d1844c74b22c110c4b8e8f2519be2b1723964008527281a11c3398749756" +checksum = "171aacd6d1642f9d821f27fc318a503cfe10c5c6294193c401e991266e38a583" dependencies = [ "anyhow", "cargo_metadata", @@ -1674,7 +1684,7 @@ dependencies = [ "ra_ap_span", "ra_ap_stdx", "ra_ap_toolchain", - "rustc-hash", + "rustc-hash 2.1.0", "semver", "serde", "serde_json", @@ -1684,9 +1694,9 @@ dependencies = [ [[package]] name = "ra_ap_salsa" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "370b302873eeafd07ccc6a714fc9395cae11e385955ccb78081093ee3b86f94e" +checksum = "504314128b0998f54d8e253a328a53e2a697f579f8d1f194b52f77cd8a540e36" dependencies = [ "indexmap 2.6.0", "itertools 0.12.1", @@ -1694,7 +1704,7 @@ dependencies = [ "oorandom", "parking_lot", "ra_ap_salsa-macros", - "rustc-hash", + "rustc-hash 2.1.0", "smallvec", "tracing", "triomphe", @@ -1702,9 +1712,9 @@ dependencies = [ [[package]] name = "ra_ap_salsa-macros" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "414ff383af5abdb731917ca46c1a0f6b291278430736fe1ff2430a8548206a62" +checksum = "d957f6ec9a6f11cf9c8ce0f27711f4f9813bdd690b3efa6a280cb06a75b5a0fc" dependencies = [ "heck 0.4.1", "proc-macro2", @@ -1714,9 +1724,9 @@ dependencies = [ [[package]] name = "ra_ap_span" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1b982f799c7a8051219902ff5c1974ee353ac6ca2aa5b17ab0e3db9b8d8a7bf" +checksum = "5c82fd3ff10c25958db0c254f8f4378cb75069017b675f4fe4c5e7d5f2827e71" dependencies = [ "hashbrown 0.14.5", "la-arena", @@ -1724,15 +1734,15 @@ dependencies = [ "ra_ap_stdx", "ra_ap_syntax", "ra_ap_vfs", - "rustc-hash", + "rustc-hash 2.1.0", "text-size", ] [[package]] name = "ra_ap_stdx" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb63ff9d6b11b4553fc0835f16705975258905e3b1230fcf1ddbf24c46aff69d" +checksum = "0be113ed187f4bf5403ebd8256d3d4aead8d265f670d534c646edea68516ef86" dependencies = [ "always-assert", "crossbeam-channel", @@ -1745,9 +1755,9 @@ dependencies = [ [[package]] name = "ra_ap_syntax" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1ac12decfd5cadd880177316fc16afc1f2c67f241f6290b51fd6f222e2bd4d5" +checksum = "d5af8d681a9fd408be1b17f3b150eb98907fb72b9b44000ada9c3e9b6c059188" dependencies = [ "cov-mark", "either", @@ -1756,9 +1766,8 @@ dependencies = [ "ra-ap-rustc_lexer", "ra_ap_parser", "ra_ap_stdx", - "ra_ap_text_edit", "rowan", - "rustc-hash", + "rustc-hash 2.1.0", "smol_str", "tracing", "triomphe", @@ -1766,9 +1775,9 @@ dependencies = [ [[package]] name = "ra_ap_syntax-bridge" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d57ec874cf6d45d25ce5d63dbfdf60912d5a33138855c4ab7e4314cfd01f6fa" +checksum = "8f957885289e9789dffcd81ebfa4c2d49be3fad41f7718ffeacb3599f6d88678" dependencies = [ "ra_ap_intern", "ra_ap_parser", @@ -1776,25 +1785,15 @@ dependencies = [ "ra_ap_stdx", "ra_ap_syntax", "ra_ap_tt", - "rustc-hash", + "rustc-hash 2.1.0", "tracing", ] -[[package]] -name = "ra_ap_text_edit" -version = "0.0.232" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cb72ee1901baec556f4f2ef77e287d749ac0e973f063990672d6207b076aeac" -dependencies = [ - "itertools 0.12.1", - "text-size", -] - [[package]] name = "ra_ap_toolchain" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897200f5ab09335a77e9c8344fd8d5fd67f312c402179a378613421b4dec8d8f" +checksum = "e067bd4107ec52a241b68398539632df0a850013907070002d4d403c3691e51c" dependencies = [ "camino", "home", @@ -1802,9 +1801,9 @@ dependencies = [ [[package]] name = "ra_ap_tt" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9730313c495e88a89ee33f6e34205a92652d9c9a5061ebaed59436058a33000" +checksum = "4c38deb50d7a26663c28deb01e5611b3b92b5a87298940e0638589f03c3faf62" dependencies = [ "arrayvec", "ra-ap-rustc_lexer", @@ -1815,9 +1814,9 @@ dependencies = [ [[package]] name = "ra_ap_vfs" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d833eaa5422de9bb51ab1841fe505ed00fb51e64cce397e21de6c324bbcbffa0" +checksum = "168a9378dd3f185ae94dda9c35e4d468a8ff105c8f4bb57e17f6e2312d84d1a8" dependencies = [ "crossbeam-channel", "fst", @@ -1825,15 +1824,15 @@ dependencies = [ "nohash-hasher", "ra_ap_paths", "ra_ap_stdx", - "rustc-hash", + "rustc-hash 2.1.0", "tracing", ] [[package]] name = "ra_ap_vfs-notify" -version = "0.0.232" +version = "0.0.248" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "388ea8af458d6f06ed6b67c8e3dcf634a798cb3f4e62df51bd6be00c2b219bca" +checksum = "1a5e13d88bf8bbd8dd02c96dd8d89e6cebc2757a0edf13b3b85007024fcf216c" dependencies = [ "crossbeam-channel", "notify", @@ -1841,7 +1840,7 @@ dependencies = [ "ra_ap_stdx", "ra_ap_vfs", "rayon", - "rustc-hash", + "rustc-hash 2.1.0", "tracing", "walkdir", ] @@ -1958,7 +1957,7 @@ dependencies = [ "countme", "hashbrown 0.14.5", "memoffset", - "rustc-hash", + "rustc-hash 1.1.0", "text-size", ] @@ -1976,6 +1975,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" +[[package]] +name = "rustc-hash" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497" + [[package]] name = "rustc_apfloat" version = "0.2.1+llvm-462a31f5a5ab" @@ -2119,10 +2124,11 @@ checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "smol_str" -version = "0.2.2" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead" +checksum = "9676b89cd56310a87b93dec47b11af744f34d5fc9f367b829474eec0a891350d" dependencies = [ + "borsh", "serde", ] diff --git a/MODULE.bazel b/MODULE.bazel index ca0bbd37f735..d18aa0b4d446 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -37,7 +37,7 @@ bazel_dep(name = "buildifier_prebuilt", version = "6.4.0", dev_dependency = True # the versions there are canonical, the versions here are used for CI in github/codeql, as well as for the vendoring of dependencies. RUST_EDITION = "2021" -RUST_VERSION = "1.81.0" +RUST_VERSION = "1.82.0" rust = use_extension("@rules_rust//rust:extensions.bzl", "rust") rust.toolchain( @@ -70,7 +70,7 @@ use_repo(py_deps, "vendor__anyhow-1.0.44", "vendor__cc-1.0.70", "vendor__clap-2. # deps for ruby+rust # keep in sync by running `misc/bazel/3rdparty/update_cargo_deps.sh` tree_sitter_extractors_deps = use_extension("//misc/bazel/3rdparty:tree_sitter_extractors_extension.bzl", "r") -use_repo(tree_sitter_extractors_deps, "vendor__anyhow-1.0.93", "vendor__argfile-0.2.1", "vendor__chrono-0.4.38", "vendor__clap-4.5.20", "vendor__dunce-1.0.5", "vendor__encoding-0.2.33", "vendor__figment-0.10.19", "vendor__flate2-1.0.34", "vendor__glob-0.3.1", "vendor__globset-0.4.15", "vendor__itertools-0.10.5", "vendor__itertools-0.13.0", "vendor__lazy_static-1.5.0", "vendor__log-0.4.22", "vendor__num-traits-0.2.19", "vendor__num_cpus-1.16.0", "vendor__proc-macro2-1.0.89", "vendor__quote-1.0.37", "vendor__ra_ap_base_db-0.0.232", "vendor__ra_ap_cfg-0.0.232", "vendor__ra_ap_hir-0.0.232", "vendor__ra_ap_hir_def-0.0.232", "vendor__ra_ap_hir_expand-0.0.232", "vendor__ra_ap_ide_db-0.0.232", "vendor__ra_ap_intern-0.0.232", "vendor__ra_ap_load-cargo-0.0.232", "vendor__ra_ap_parser-0.0.232", "vendor__ra_ap_paths-0.0.232", "vendor__ra_ap_project_model-0.0.232", "vendor__ra_ap_span-0.0.232", "vendor__ra_ap_syntax-0.0.232", "vendor__ra_ap_vfs-0.0.232", "vendor__rand-0.8.5", "vendor__rayon-1.10.0", "vendor__regex-1.11.1", "vendor__serde-1.0.214", "vendor__serde_json-1.0.133", "vendor__serde_with-3.11.0", "vendor__stderrlog-0.6.0", "vendor__syn-2.0.87", "vendor__tracing-0.1.40", "vendor__tracing-subscriber-0.3.18", "vendor__tree-sitter-0.24.4", "vendor__tree-sitter-embedded-template-0.23.2", "vendor__tree-sitter-json-0.24.8", "vendor__tree-sitter-ql-0.23.1", "vendor__tree-sitter-ruby-0.23.1", "vendor__triomphe-0.1.14", "vendor__ungrammar-1.16.1") +use_repo(tree_sitter_extractors_deps, "vendor__anyhow-1.0.93", "vendor__argfile-0.2.1", "vendor__chrono-0.4.38", "vendor__clap-4.5.20", "vendor__dunce-1.0.5", "vendor__either-1.13.0", "vendor__encoding-0.2.33", "vendor__figment-0.10.19", "vendor__flate2-1.0.34", "vendor__glob-0.3.1", "vendor__globset-0.4.15", "vendor__itertools-0.12.1", "vendor__itertools-0.13.0", "vendor__lazy_static-1.5.0", "vendor__log-0.4.22", "vendor__num-traits-0.2.19", "vendor__num_cpus-1.16.0", "vendor__proc-macro2-1.0.89", "vendor__quote-1.0.37", "vendor__ra_ap_base_db-0.0.248", "vendor__ra_ap_cfg-0.0.248", "vendor__ra_ap_hir-0.0.248", "vendor__ra_ap_hir_def-0.0.248", "vendor__ra_ap_hir_expand-0.0.248", "vendor__ra_ap_ide_db-0.0.248", "vendor__ra_ap_intern-0.0.248", "vendor__ra_ap_load-cargo-0.0.248", "vendor__ra_ap_parser-0.0.248", "vendor__ra_ap_paths-0.0.248", "vendor__ra_ap_project_model-0.0.248", "vendor__ra_ap_span-0.0.248", "vendor__ra_ap_stdx-0.0.248", "vendor__ra_ap_syntax-0.0.248", "vendor__ra_ap_vfs-0.0.248", "vendor__rand-0.8.5", "vendor__rayon-1.10.0", "vendor__regex-1.11.1", "vendor__serde-1.0.214", "vendor__serde_json-1.0.133", "vendor__serde_with-3.11.0", "vendor__stderrlog-0.6.0", "vendor__syn-2.0.87", "vendor__tracing-0.1.40", "vendor__tracing-subscriber-0.3.18", "vendor__tree-sitter-0.24.4", "vendor__tree-sitter-embedded-template-0.23.2", "vendor__tree-sitter-json-0.24.8", "vendor__tree-sitter-ql-0.23.1", "vendor__tree-sitter-ruby-0.23.1", "vendor__triomphe-0.1.14", "vendor__ungrammar-1.16.1") dotnet = use_extension("@rules_dotnet//dotnet:extensions.bzl", "dotnet") dotnet.toolchain(dotnet_version = "9.0.100") diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.bazel index 0e886c727a04..218a229c36ae 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.bazel @@ -61,6 +61,12 @@ alias( tags = ["manual"], ) +alias( + name = "either", + actual = "@vendor__either-1.13.0//:either", + tags = ["manual"], +) + alias( name = "encoding", actual = "@vendor__encoding-0.2.33//:encoding", @@ -92,8 +98,8 @@ alias( ) alias( - name = "itertools-0.10.5", - actual = "@vendor__itertools-0.10.5//:itertools", + name = "itertools-0.12.1", + actual = "@vendor__itertools-0.12.1//:itertools", tags = ["manual"], ) @@ -141,85 +147,91 @@ alias( alias( name = "ra_ap_base_db", - actual = "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db", + actual = "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db", tags = ["manual"], ) alias( name = "ra_ap_cfg", - actual = "@vendor__ra_ap_cfg-0.0.232//:ra_ap_cfg", + actual = "@vendor__ra_ap_cfg-0.0.248//:ra_ap_cfg", tags = ["manual"], ) alias( name = "ra_ap_hir", - actual = "@vendor__ra_ap_hir-0.0.232//:ra_ap_hir", + actual = "@vendor__ra_ap_hir-0.0.248//:ra_ap_hir", tags = ["manual"], ) alias( name = "ra_ap_hir_def", - actual = "@vendor__ra_ap_hir_def-0.0.232//:ra_ap_hir_def", + actual = "@vendor__ra_ap_hir_def-0.0.248//:ra_ap_hir_def", tags = ["manual"], ) alias( name = "ra_ap_hir_expand", - actual = "@vendor__ra_ap_hir_expand-0.0.232//:ra_ap_hir_expand", + actual = "@vendor__ra_ap_hir_expand-0.0.248//:ra_ap_hir_expand", tags = ["manual"], ) alias( name = "ra_ap_ide_db", - actual = "@vendor__ra_ap_ide_db-0.0.232//:ra_ap_ide_db", + actual = "@vendor__ra_ap_ide_db-0.0.248//:ra_ap_ide_db", tags = ["manual"], ) alias( name = "ra_ap_intern", - actual = "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", + actual = "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", tags = ["manual"], ) alias( name = "ra_ap_load-cargo", - actual = "@vendor__ra_ap_load-cargo-0.0.232//:ra_ap_load_cargo", + actual = "@vendor__ra_ap_load-cargo-0.0.248//:ra_ap_load_cargo", tags = ["manual"], ) alias( name = "ra_ap_parser", - actual = "@vendor__ra_ap_parser-0.0.232//:ra_ap_parser", + actual = "@vendor__ra_ap_parser-0.0.248//:ra_ap_parser", tags = ["manual"], ) alias( name = "ra_ap_paths", - actual = "@vendor__ra_ap_paths-0.0.232//:ra_ap_paths", + actual = "@vendor__ra_ap_paths-0.0.248//:ra_ap_paths", tags = ["manual"], ) alias( name = "ra_ap_project_model", - actual = "@vendor__ra_ap_project_model-0.0.232//:ra_ap_project_model", + actual = "@vendor__ra_ap_project_model-0.0.248//:ra_ap_project_model", tags = ["manual"], ) alias( name = "ra_ap_span", - actual = "@vendor__ra_ap_span-0.0.232//:ra_ap_span", + actual = "@vendor__ra_ap_span-0.0.248//:ra_ap_span", + tags = ["manual"], +) + +alias( + name = "ra_ap_stdx", + actual = "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", tags = ["manual"], ) alias( name = "ra_ap_syntax", - actual = "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax", + actual = "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax", tags = ["manual"], ) alias( name = "ra_ap_vfs", - actual = "@vendor__ra_ap_vfs-0.0.232//:ra_ap_vfs", + actual = "@vendor__ra_ap_vfs-0.0.248//:ra_ap_vfs", tags = ["manual"], ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.borsh-1.5.3.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.borsh-1.5.3.bazel new file mode 100644 index 000000000000..a5be67b7260b --- /dev/null +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.borsh-1.5.3.bazel @@ -0,0 +1,143 @@ +############################################################################### +# @generated +# DO NOT MODIFY: This file is auto-generated by a crate_universe tool. To +# regenerate this file, run the following: +# +# bazel run @@//misc/bazel/3rdparty:vendor_tree_sitter_extractors +############################################################################### + +load("@rules_rust//cargo:defs.bzl", "cargo_build_script") +load("@rules_rust//rust:defs.bzl", "rust_library") + +package(default_visibility = ["//visibility:public"]) + +rust_library( + name = "borsh", + srcs = glob( + include = ["**/*.rs"], + allow_empty = True, + ), + compile_data = glob( + include = ["**"], + allow_empty = True, + exclude = [ + "**/* *", + ".tmp_git_root/**/*", + "BUILD", + "BUILD.bazel", + "WORKSPACE", + "WORKSPACE.bazel", + ], + ), + crate_root = "src/lib.rs", + edition = "2018", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-bazel", + "crate-name=borsh", + "manual", + "noclippy", + "norustfmt", + ], + target_compatible_with = select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [], + "@rules_rust//rust/platform:aarch64-apple-ios": [], + "@rules_rust//rust/platform:aarch64-apple-ios-sim": [], + "@rules_rust//rust/platform:aarch64-fuchsia": [], + "@rules_rust//rust/platform:aarch64-linux-android": [], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [], + "@rules_rust//rust/platform:aarch64-unknown-nto-qnx710": [], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [], + "@rules_rust//rust/platform:armv7-linux-androideabi": [], + "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [], + "@rules_rust//rust/platform:i686-apple-darwin": [], + "@rules_rust//rust/platform:i686-linux-android": [], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [], + "@rules_rust//rust/platform:i686-unknown-freebsd": [], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [], + "@rules_rust//rust/platform:riscv32imc-unknown-none-elf": [], + "@rules_rust//rust/platform:riscv64gc-unknown-none-elf": [], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [], + "@rules_rust//rust/platform:thumbv7em-none-eabi": [], + "@rules_rust//rust/platform:thumbv8m.main-none-eabi": [], + "@rules_rust//rust/platform:wasm32-unknown-unknown": [], + "@rules_rust//rust/platform:wasm32-wasi": [], + "@rules_rust//rust/platform:x86_64-apple-darwin": [], + "@rules_rust//rust/platform:x86_64-apple-ios": [], + "@rules_rust//rust/platform:x86_64-fuchsia": [], + "@rules_rust//rust/platform:x86_64-linux-android": [], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [], + "@rules_rust//rust/platform:x86_64-unknown-none": [], + "//conditions:default": ["@platforms//:incompatible"], + }), + version = "1.5.3", + deps = [ + "@vendor__borsh-1.5.3//:build_script_build", + ], +) + +cargo_build_script( + name = "_bs", + srcs = glob( + include = ["**/*.rs"], + allow_empty = True, + ), + compile_data = glob( + include = ["**"], + allow_empty = True, + exclude = [ + "**/* *", + "**/*.rs", + ".tmp_git_root/**/*", + "BUILD", + "BUILD.bazel", + "WORKSPACE", + "WORKSPACE.bazel", + ], + ), + crate_name = "build_script_build", + crate_root = "build.rs", + data = glob( + include = ["**"], + allow_empty = True, + exclude = [ + "**/* *", + ".tmp_git_root/**/*", + "BUILD", + "BUILD.bazel", + "WORKSPACE", + "WORKSPACE.bazel", + ], + ), + edition = "2018", + pkg_name = "borsh", + rustc_flags = [ + "--cap-lints=allow", + ], + tags = [ + "cargo-bazel", + "crate-name=borsh", + "manual", + "noclippy", + "norustfmt", + ], + version = "1.5.3", + visibility = ["//visibility:private"], + deps = [ + "@vendor__cfg_aliases-0.2.1//:cfg_aliases", + ], +) + +alias( + name = "build_script_build", + actual = ":_bs", + tags = ["manual"], +) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.itertools-0.10.5.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.cfg_aliases-0.2.1.bazel similarity index 93% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.itertools-0.10.5.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.cfg_aliases-0.2.1.bazel index 5c891c943c87..f9638098881e 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.itertools-0.10.5.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.cfg_aliases-0.2.1.bazel @@ -11,7 +11,7 @@ load("@rules_rust//rust:defs.bzl", "rust_library") package(default_visibility = ["//visibility:public"]) rust_library( - name = "itertools", + name = "cfg_aliases", srcs = glob( include = ["**/*.rs"], allow_empty = True, @@ -28,11 +28,6 @@ rust_library( "WORKSPACE.bazel", ], ), - crate_features = [ - "default", - "use_alloc", - "use_std", - ], crate_root = "src/lib.rs", edition = "2018", rustc_flags = [ @@ -40,7 +35,7 @@ rust_library( ], tags = [ "cargo-bazel", - "crate-name=itertools", + "crate-name=cfg_aliases", "manual", "noclippy", "norustfmt", @@ -82,8 +77,5 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.10.5", - deps = [ - "@vendor__either-1.13.0//:either", - ], + version = "0.2.1", ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_abi-0.63.0.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_abi-0.80.0.bazel similarity index 95% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_abi-0.63.0.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_abi-0.80.0.bazel index 8cb5c012bd65..22a90bf33263 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_abi-0.63.0.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_abi-0.80.0.bazel @@ -17,7 +17,7 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra-ap-rustc_index-0.63.0//:ra_ap_rustc_index": "rustc_index", + "@vendor__ra-ap-rustc_index-0.80.0//:ra_ap_rustc_index": "rustc_index", }, compile_data = glob( include = ["**"], @@ -80,10 +80,10 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.63.0", + version = "0.80.0", deps = [ "@vendor__bitflags-2.6.0//:bitflags", - "@vendor__ra-ap-rustc_index-0.63.0//:ra_ap_rustc_index", + "@vendor__ra-ap-rustc_index-0.80.0//:ra_ap_rustc_index", "@vendor__tracing-0.1.40//:tracing", ], ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_index-0.63.0.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_index-0.80.0.bazel similarity index 95% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_index-0.63.0.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_index-0.80.0.bazel index c9036e9112e8..526133ac77ce 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_index-0.63.0.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_index-0.80.0.bazel @@ -17,7 +17,7 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra-ap-rustc_index_macros-0.63.0//:ra_ap_rustc_index_macros": "rustc_index_macros", + "@vendor__ra-ap-rustc_index_macros-0.80.0//:ra_ap_rustc_index_macros": "rustc_index_macros", }, compile_data = glob( include = ["**"], @@ -34,7 +34,7 @@ rust_library( crate_root = "src/lib.rs", edition = "2021", proc_macro_deps = [ - "@vendor__ra-ap-rustc_index_macros-0.63.0//:ra_ap_rustc_index_macros", + "@vendor__ra-ap-rustc_index_macros-0.80.0//:ra_ap_rustc_index_macros", ], rustc_flags = [ "--cap-lints=allow", @@ -83,7 +83,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.63.0", + version = "0.80.0", deps = [ "@vendor__arrayvec-0.7.6//:arrayvec", "@vendor__smallvec-1.13.2//:smallvec", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_index_macros-0.63.0.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_index_macros-0.80.0.bazel similarity index 99% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_index_macros-0.63.0.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_index_macros-0.80.0.bazel index 99bc76323f3f..99ccaaf57b6b 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_index_macros-0.63.0.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_index_macros-0.80.0.bazel @@ -77,7 +77,7 @@ rust_proc_macro( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.63.0", + version = "0.80.0", deps = [ "@vendor__proc-macro2-1.0.89//:proc_macro2", "@vendor__quote-1.0.37//:quote", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_lexer-0.63.0.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_lexer-0.80.0.bazel similarity index 99% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_lexer-0.63.0.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_lexer-0.80.0.bazel index b0dc0fbb8223..efdc2e010fdd 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_lexer-0.63.0.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_lexer-0.80.0.bazel @@ -77,7 +77,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.63.0", + version = "0.80.0", deps = [ "@vendor__unicode-properties-0.1.3//:unicode_properties", "@vendor__unicode-xid-0.2.6//:unicode_xid", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_parse_format-0.63.0.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_parse_format-0.80.0.bazel similarity index 92% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_parse_format-0.63.0.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_parse_format-0.80.0.bazel index 8b9700233ebf..9b43b4ae377b 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_parse_format-0.63.0.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_parse_format-0.80.0.bazel @@ -17,8 +17,8 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra-ap-rustc_index-0.63.0//:ra_ap_rustc_index": "rustc_index", - "@vendor__ra-ap-rustc_lexer-0.63.0//:ra_ap_rustc_lexer": "rustc_lexer", + "@vendor__ra-ap-rustc_index-0.80.0//:ra_ap_rustc_index": "rustc_index", + "@vendor__ra-ap-rustc_lexer-0.80.0//:ra_ap_rustc_lexer": "rustc_lexer", }, compile_data = glob( include = ["**"], @@ -81,9 +81,9 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.63.0", + version = "0.80.0", deps = [ - "@vendor__ra-ap-rustc_index-0.63.0//:ra_ap_rustc_index", - "@vendor__ra-ap-rustc_lexer-0.63.0//:ra_ap_rustc_lexer", + "@vendor__ra-ap-rustc_index-0.80.0//:ra_ap_rustc_index", + "@vendor__ra-ap-rustc_lexer-0.80.0//:ra_ap_rustc_lexer", ], ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_pattern_analysis-0.63.0.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_pattern_analysis-0.80.0.bazel similarity index 94% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_pattern_analysis-0.63.0.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_pattern_analysis-0.80.0.bazel index 29456d75bd9a..0a7733522c72 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_pattern_analysis-0.63.0.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra-ap-rustc_pattern_analysis-0.80.0.bazel @@ -17,7 +17,7 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra-ap-rustc_index-0.63.0//:ra_ap_rustc_index": "rustc_index", + "@vendor__ra-ap-rustc_index-0.80.0//:ra_ap_rustc_index": "rustc_index", }, compile_data = glob( include = ["**"], @@ -80,10 +80,10 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.63.0", + version = "0.80.0", deps = [ - "@vendor__ra-ap-rustc_index-0.63.0//:ra_ap_rustc_index", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra-ap-rustc_index-0.80.0//:ra_ap_rustc_index", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__rustc_apfloat-0.2.1-llvm-462a31f5a5ab//:rustc_apfloat", "@vendor__smallvec-1.13.2//:smallvec", "@vendor__tracing-0.1.40//:tracing", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_base_db-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_base_db-0.0.248.bazel similarity index 82% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_base_db-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_base_db-0.0.248.bazel index ac62e9fa6e8b..df521b674902 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_base_db-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_base_db-0.0.248.bazel @@ -17,12 +17,12 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_cfg-0.0.232//:ra_ap_cfg": "cfg", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern": "intern", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span": "span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax": "syntax", - "@vendor__ra_ap_vfs-0.0.232//:ra_ap_vfs": "vfs", + "@vendor__ra_ap_cfg-0.0.248//:ra_ap_cfg": "cfg", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern": "intern", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span": "span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax": "syntax", + "@vendor__ra_ap_vfs-0.0.248//:ra_ap_vfs": "vfs", }, compile_data = glob( include = ["**"], @@ -85,18 +85,18 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__la-arena-0.3.1//:la_arena", "@vendor__lz4_flex-0.11.3//:lz4_flex", - "@vendor__ra_ap_cfg-0.0.232//:ra_ap_cfg", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", - "@vendor__ra_ap_salsa-0.0.232//:salsa", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax", - "@vendor__ra_ap_vfs-0.0.232//:ra_ap_vfs", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra_ap_cfg-0.0.248//:ra_ap_cfg", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", + "@vendor__ra_ap_salsa-0.0.248//:ra_salsa", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax", + "@vendor__ra_ap_vfs-0.0.248//:ra_ap_vfs", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__semver-1.0.23//:semver", "@vendor__tracing-0.1.40//:tracing", "@vendor__triomphe-0.1.14//:triomphe", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_cfg-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_cfg-0.0.248.bazel similarity index 91% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_cfg-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_cfg-0.0.248.bazel index 4a40dd49384e..2f55c2b3f6b1 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_cfg-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_cfg-0.0.248.bazel @@ -17,8 +17,8 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern": "intern", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt": "tt", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern": "intern", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt": "tt", }, compile_data = glob( include = ["**"], @@ -84,10 +84,11 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt", + "@vendor__rustc-hash-2.1.0//:rustc_hash", + "@vendor__tracing-0.1.40//:tracing", ], ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir-0.0.248.bazel similarity index 75% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir-0.0.248.bazel index c5ed2d5e99c2..1dd6a5e35a99 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir-0.0.248.bazel @@ -17,16 +17,16 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db": "base_db", - "@vendor__ra_ap_cfg-0.0.232//:ra_ap_cfg": "cfg", - "@vendor__ra_ap_hir_def-0.0.232//:ra_ap_hir_def": "hir_def", - "@vendor__ra_ap_hir_expand-0.0.232//:ra_ap_hir_expand": "hir_expand", - "@vendor__ra_ap_hir_ty-0.0.232//:ra_ap_hir_ty": "hir_ty", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern": "intern", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span": "span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax": "syntax", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt": "tt", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db": "base_db", + "@vendor__ra_ap_cfg-0.0.248//:ra_ap_cfg": "cfg", + "@vendor__ra_ap_hir_def-0.0.248//:ra_ap_hir_def": "hir_def", + "@vendor__ra_ap_hir_expand-0.0.248//:ra_ap_hir_expand": "hir_expand", + "@vendor__ra_ap_hir_ty-0.0.248//:ra_ap_hir_ty": "hir_ty", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern": "intern", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span": "span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax": "syntax", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt": "tt", }, compile_data = glob( include = ["**"], @@ -89,22 +89,22 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__arrayvec-0.7.6//:arrayvec", "@vendor__either-1.13.0//:either", "@vendor__itertools-0.12.1//:itertools", - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db", - "@vendor__ra_ap_cfg-0.0.232//:ra_ap_cfg", - "@vendor__ra_ap_hir_def-0.0.232//:ra_ap_hir_def", - "@vendor__ra_ap_hir_expand-0.0.232//:ra_ap_hir_expand", - "@vendor__ra_ap_hir_ty-0.0.232//:ra_ap_hir_ty", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db", + "@vendor__ra_ap_cfg-0.0.248//:ra_ap_cfg", + "@vendor__ra_ap_hir_def-0.0.248//:ra_ap_hir_def", + "@vendor__ra_ap_hir_expand-0.0.248//:ra_ap_hir_expand", + "@vendor__ra_ap_hir_ty-0.0.248//:ra_ap_hir_ty", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__smallvec-1.13.2//:smallvec", "@vendor__tracing-0.1.40//:tracing", "@vendor__triomphe-0.1.14//:triomphe", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_def-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_def-0.0.248.bazel similarity index 75% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_def-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_def-0.0.248.bazel index 692d67bd783f..1d60e7e7e436 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_def-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_def-0.0.248.bazel @@ -17,16 +17,16 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db": "base_db", - "@vendor__ra_ap_cfg-0.0.232//:ra_ap_cfg": "cfg", - "@vendor__ra_ap_hir_expand-0.0.232//:ra_ap_hir_expand": "hir_expand", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern": "intern", - "@vendor__ra_ap_limit-0.0.232//:ra_ap_limit": "limit", - "@vendor__ra_ap_mbe-0.0.232//:ra_ap_mbe": "mbe", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span": "span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax": "syntax", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt": "tt", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db": "base_db", + "@vendor__ra_ap_cfg-0.0.248//:ra_ap_cfg": "cfg", + "@vendor__ra_ap_hir_expand-0.0.248//:ra_ap_hir_expand": "hir_expand", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern": "intern", + "@vendor__ra_ap_limit-0.0.248//:ra_ap_limit": "limit", + "@vendor__ra_ap_mbe-0.0.248//:ra_ap_mbe": "mbe", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span": "span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax": "syntax", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt": "tt", }, compile_data = glob( include = ["**"], @@ -89,7 +89,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__arrayvec-0.7.6//:arrayvec", "@vendor__bitflags-2.6.0//:bitflags", @@ -102,21 +102,22 @@ rust_library( "@vendor__indexmap-2.6.0//:indexmap", "@vendor__itertools-0.12.1//:itertools", "@vendor__la-arena-0.3.1//:la_arena", - "@vendor__ra-ap-rustc_abi-0.63.0//:ra_ap_rustc_abi", - "@vendor__ra-ap-rustc_parse_format-0.63.0//:ra_ap_rustc_parse_format", - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db", - "@vendor__ra_ap_cfg-0.0.232//:ra_ap_cfg", - "@vendor__ra_ap_hir_expand-0.0.232//:ra_ap_hir_expand", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", - "@vendor__ra_ap_limit-0.0.232//:ra_ap_limit", - "@vendor__ra_ap_mbe-0.0.232//:ra_ap_mbe", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra-ap-rustc_abi-0.80.0//:ra_ap_rustc_abi", + "@vendor__ra-ap-rustc_parse_format-0.80.0//:ra_ap_rustc_parse_format", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db", + "@vendor__ra_ap_cfg-0.0.248//:ra_ap_cfg", + "@vendor__ra_ap_hir_expand-0.0.248//:ra_ap_hir_expand", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", + "@vendor__ra_ap_limit-0.0.248//:ra_ap_limit", + "@vendor__ra_ap_mbe-0.0.248//:ra_ap_mbe", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__rustc_apfloat-0.2.1-llvm-462a31f5a5ab//:rustc_apfloat", "@vendor__smallvec-1.13.2//:smallvec", + "@vendor__text-size-1.1.1//:text_size", "@vendor__tracing-0.1.40//:tracing", "@vendor__triomphe-0.1.14//:triomphe", ], diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_expand-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_expand-0.0.248.bazel similarity index 74% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_expand-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_expand-0.0.248.bazel index 63bbc0bcce94..856f0ed9b270 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_expand-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_expand-0.0.248.bazel @@ -17,17 +17,17 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db": "base_db", - "@vendor__ra_ap_cfg-0.0.232//:ra_ap_cfg": "cfg", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern": "intern", - "@vendor__ra_ap_limit-0.0.232//:ra_ap_limit": "limit", - "@vendor__ra_ap_mbe-0.0.232//:ra_ap_mbe": "mbe", - "@vendor__ra_ap_parser-0.0.232//:ra_ap_parser": "parser", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span": "span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax": "syntax", - "@vendor__ra_ap_syntax-bridge-0.0.232//:ra_ap_syntax_bridge": "syntax_bridge", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt": "tt", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db": "base_db", + "@vendor__ra_ap_cfg-0.0.248//:ra_ap_cfg": "cfg", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern": "intern", + "@vendor__ra_ap_limit-0.0.248//:ra_ap_limit": "limit", + "@vendor__ra_ap_mbe-0.0.248//:ra_ap_mbe": "mbe", + "@vendor__ra_ap_parser-0.0.248//:ra_ap_parser": "parser", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span": "span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax": "syntax", + "@vendor__ra_ap_syntax-bridge-0.0.248//:ra_ap_syntax_bridge": "syntax_bridge", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt": "tt", }, compile_data = glob( include = ["**"], @@ -90,25 +90,25 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__cov-mark-2.0.0//:cov_mark", "@vendor__either-1.13.0//:either", "@vendor__hashbrown-0.14.5//:hashbrown", "@vendor__itertools-0.12.1//:itertools", "@vendor__la-arena-0.3.1//:la_arena", - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db", - "@vendor__ra_ap_cfg-0.0.232//:ra_ap_cfg", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", - "@vendor__ra_ap_limit-0.0.232//:ra_ap_limit", - "@vendor__ra_ap_mbe-0.0.232//:ra_ap_mbe", - "@vendor__ra_ap_parser-0.0.232//:ra_ap_parser", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax", - "@vendor__ra_ap_syntax-bridge-0.0.232//:ra_ap_syntax_bridge", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db", + "@vendor__ra_ap_cfg-0.0.248//:ra_ap_cfg", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", + "@vendor__ra_ap_limit-0.0.248//:ra_ap_limit", + "@vendor__ra_ap_mbe-0.0.248//:ra_ap_mbe", + "@vendor__ra_ap_parser-0.0.248//:ra_ap_parser", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax", + "@vendor__ra_ap_syntax-bridge-0.0.248//:ra_ap_syntax_bridge", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__smallvec-1.13.2//:smallvec", "@vendor__tracing-0.1.40//:tracing", "@vendor__triomphe-0.1.14//:triomphe", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_ty-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_ty-0.0.248.bazel similarity index 78% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_ty-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_ty-0.0.248.bazel index 2ab7288dddb6..982274c451be 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_ty-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_hir_ty-0.0.248.bazel @@ -17,14 +17,14 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db": "base_db", - "@vendor__ra_ap_hir_def-0.0.232//:ra_ap_hir_def": "hir_def", - "@vendor__ra_ap_hir_expand-0.0.232//:ra_ap_hir_expand": "hir_expand", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern": "intern", - "@vendor__ra_ap_limit-0.0.232//:ra_ap_limit": "limit", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span": "span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax": "syntax", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db": "base_db", + "@vendor__ra_ap_hir_def-0.0.248//:ra_ap_hir_def": "hir_def", + "@vendor__ra_ap_hir_expand-0.0.248//:ra_ap_hir_expand": "hir_expand", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern": "intern", + "@vendor__ra_ap_limit-0.0.248//:ra_ap_limit": "limit", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span": "span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax": "syntax", }, compile_data = glob( include = ["**"], @@ -90,7 +90,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__arrayvec-0.7.6//:arrayvec", "@vendor__bitflags-2.6.0//:bitflags", @@ -105,18 +105,18 @@ rust_library( "@vendor__la-arena-0.3.1//:la_arena", "@vendor__nohash-hasher-0.2.0//:nohash_hasher", "@vendor__oorandom-11.1.4//:oorandom", - "@vendor__ra-ap-rustc_abi-0.63.0//:ra_ap_rustc_abi", - "@vendor__ra-ap-rustc_index-0.63.0//:ra_ap_rustc_index", - "@vendor__ra-ap-rustc_pattern_analysis-0.63.0//:ra_ap_rustc_pattern_analysis", - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db", - "@vendor__ra_ap_hir_def-0.0.232//:ra_ap_hir_def", - "@vendor__ra_ap_hir_expand-0.0.232//:ra_ap_hir_expand", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", - "@vendor__ra_ap_limit-0.0.232//:ra_ap_limit", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra-ap-rustc_abi-0.80.0//:ra_ap_rustc_abi", + "@vendor__ra-ap-rustc_index-0.80.0//:ra_ap_rustc_index", + "@vendor__ra-ap-rustc_pattern_analysis-0.80.0//:ra_ap_rustc_pattern_analysis", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db", + "@vendor__ra_ap_hir_def-0.0.248//:ra_ap_hir_def", + "@vendor__ra_ap_hir_expand-0.0.248//:ra_ap_hir_expand", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", + "@vendor__ra_ap_limit-0.0.248//:ra_ap_limit", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__rustc_apfloat-0.2.1-llvm-462a31f5a5ab//:rustc_apfloat", "@vendor__scoped-tls-1.0.1//:scoped_tls", "@vendor__smallvec-1.13.2//:smallvec", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_ide_db-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_ide_db-0.0.248.bazel similarity index 78% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_ide_db-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_ide_db-0.0.248.bazel index c9a42c265093..31d3c794236a 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_ide_db-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_ide_db-0.0.248.bazel @@ -17,15 +17,14 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db": "base_db", - "@vendor__ra_ap_hir-0.0.232//:ra_ap_hir": "hir", - "@vendor__ra_ap_limit-0.0.232//:ra_ap_limit": "limit", - "@vendor__ra_ap_parser-0.0.232//:ra_ap_parser": "parser", - "@vendor__ra_ap_profile-0.0.232//:ra_ap_profile": "profile", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span": "span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax": "syntax", - "@vendor__ra_ap_text_edit-0.0.232//:ra_ap_text_edit": "text_edit", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db": "base_db", + "@vendor__ra_ap_hir-0.0.248//:ra_ap_hir": "hir", + "@vendor__ra_ap_limit-0.0.248//:ra_ap_limit": "limit", + "@vendor__ra_ap_parser-0.0.248//:ra_ap_parser": "parser", + "@vendor__ra_ap_profile-0.0.248//:ra_ap_profile": "profile", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span": "span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax": "syntax", }, compile_data = glob( include = ["**"], @@ -88,7 +87,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__arrayvec-0.7.6//:arrayvec", "@vendor__bitflags-2.6.0//:bitflags", @@ -101,17 +100,16 @@ rust_library( "@vendor__line-index-0.1.2//:line_index", "@vendor__memchr-2.7.4//:memchr", "@vendor__nohash-hasher-0.2.0//:nohash_hasher", - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db", - "@vendor__ra_ap_hir-0.0.232//:ra_ap_hir", - "@vendor__ra_ap_limit-0.0.232//:ra_ap_limit", - "@vendor__ra_ap_parser-0.0.232//:ra_ap_parser", - "@vendor__ra_ap_profile-0.0.232//:ra_ap_profile", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax", - "@vendor__ra_ap_text_edit-0.0.232//:ra_ap_text_edit", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db", + "@vendor__ra_ap_hir-0.0.248//:ra_ap_hir", + "@vendor__ra_ap_limit-0.0.248//:ra_ap_limit", + "@vendor__ra_ap_parser-0.0.248//:ra_ap_parser", + "@vendor__ra_ap_profile-0.0.248//:ra_ap_profile", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax", "@vendor__rayon-1.10.0//:rayon", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__tracing-0.1.40//:tracing", "@vendor__triomphe-0.1.14//:triomphe", ], diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_intern-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_intern-0.0.248.bazel similarity index 97% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_intern-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_intern-0.0.248.bazel index a45f61128322..bd9d29a3d3f5 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_intern-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_intern-0.0.248.bazel @@ -77,11 +77,11 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__dashmap-5.5.3//:dashmap", "@vendor__hashbrown-0.14.5//:hashbrown", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__sptr-0.3.2//:sptr", "@vendor__triomphe-0.1.14//:triomphe", ], diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_limit-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_limit-0.0.248.bazel similarity index 99% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_limit-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_limit-0.0.248.bazel index dae361476ace..31881577d698 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_limit-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_limit-0.0.248.bazel @@ -77,5 +77,5 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_load-cargo-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_load-cargo-0.0.248.bazel similarity index 75% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_load-cargo-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_load-cargo-0.0.248.bazel index bd587db5731a..aa25146d53cb 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_load-cargo-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_load-cargo-0.0.248.bazel @@ -17,16 +17,16 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_hir_expand-0.0.232//:ra_ap_hir_expand": "hir_expand", - "@vendor__ra_ap_ide_db-0.0.232//:ra_ap_ide_db": "ide_db", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern": "intern", - "@vendor__ra_ap_paths-0.0.232//:ra_ap_paths": "paths", - "@vendor__ra_ap_proc_macro_api-0.0.232//:ra_ap_proc_macro_api": "proc_macro_api", - "@vendor__ra_ap_project_model-0.0.232//:ra_ap_project_model": "project_model", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span": "span", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt": "tt", - "@vendor__ra_ap_vfs-0.0.232//:ra_ap_vfs": "vfs", - "@vendor__ra_ap_vfs-notify-0.0.232//:ra_ap_vfs_notify": "vfs_notify", + "@vendor__ra_ap_hir_expand-0.0.248//:ra_ap_hir_expand": "hir_expand", + "@vendor__ra_ap_ide_db-0.0.248//:ra_ap_ide_db": "ide_db", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern": "intern", + "@vendor__ra_ap_paths-0.0.248//:ra_ap_paths": "paths", + "@vendor__ra_ap_proc_macro_api-0.0.248//:ra_ap_proc_macro_api": "proc_macro_api", + "@vendor__ra_ap_project_model-0.0.248//:ra_ap_project_model": "project_model", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span": "span", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt": "tt", + "@vendor__ra_ap_vfs-0.0.248//:ra_ap_vfs": "vfs", + "@vendor__ra_ap_vfs-notify-0.0.248//:ra_ap_vfs_notify": "vfs_notify", }, compile_data = glob( include = ["**"], @@ -89,21 +89,21 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__anyhow-1.0.93//:anyhow", "@vendor__crossbeam-channel-0.5.13//:crossbeam_channel", "@vendor__itertools-0.12.1//:itertools", - "@vendor__ra_ap_hir_expand-0.0.232//:ra_ap_hir_expand", - "@vendor__ra_ap_ide_db-0.0.232//:ra_ap_ide_db", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", - "@vendor__ra_ap_paths-0.0.232//:ra_ap_paths", - "@vendor__ra_ap_proc_macro_api-0.0.232//:ra_ap_proc_macro_api", - "@vendor__ra_ap_project_model-0.0.232//:ra_ap_project_model", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt", - "@vendor__ra_ap_vfs-0.0.232//:ra_ap_vfs", - "@vendor__ra_ap_vfs-notify-0.0.232//:ra_ap_vfs_notify", + "@vendor__ra_ap_hir_expand-0.0.248//:ra_ap_hir_expand", + "@vendor__ra_ap_ide_db-0.0.248//:ra_ap_ide_db", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", + "@vendor__ra_ap_paths-0.0.248//:ra_ap_paths", + "@vendor__ra_ap_proc_macro_api-0.0.248//:ra_ap_proc_macro_api", + "@vendor__ra_ap_project_model-0.0.248//:ra_ap_project_model", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt", + "@vendor__ra_ap_vfs-0.0.248//:ra_ap_vfs", + "@vendor__ra_ap_vfs-notify-0.0.248//:ra_ap_vfs_notify", "@vendor__tracing-0.1.40//:tracing", ], ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_mbe-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_mbe-0.0.248.bazel similarity index 79% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_mbe-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_mbe-0.0.248.bazel index daed6a0e2bcb..13186f295e29 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_mbe-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_mbe-0.0.248.bazel @@ -17,13 +17,13 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern": "intern", - "@vendor__ra_ap_parser-0.0.232//:ra_ap_parser": "parser", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span": "span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax": "syntax", - "@vendor__ra_ap_syntax-bridge-0.0.232//:ra_ap_syntax_bridge": "syntax_bridge", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt": "tt", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern": "intern", + "@vendor__ra_ap_parser-0.0.248//:ra_ap_parser": "parser", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span": "span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax": "syntax", + "@vendor__ra_ap_syntax-bridge-0.0.248//:ra_ap_syntax_bridge": "syntax_bridge", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt": "tt", }, compile_data = glob( include = ["**"], @@ -86,18 +86,19 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__arrayvec-0.7.6//:arrayvec", "@vendor__cov-mark-2.0.0//:cov_mark", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", - "@vendor__ra_ap_parser-0.0.232//:ra_ap_parser", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax", - "@vendor__ra_ap_syntax-bridge-0.0.232//:ra_ap_syntax_bridge", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra-ap-rustc_lexer-0.80.0//:ra_ap_rustc_lexer", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", + "@vendor__ra_ap_parser-0.0.248//:ra_ap_parser", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax", + "@vendor__ra_ap_syntax-bridge-0.0.248//:ra_ap_syntax_bridge", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__smallvec-1.13.2//:smallvec", "@vendor__tracing-0.1.40//:tracing", ], diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_parser-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_parser-0.0.248.bazel similarity index 94% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_parser-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_parser-0.0.248.bazel index d512c568421c..dcbc44444b34 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_parser-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_parser-0.0.248.bazel @@ -17,7 +17,7 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_limit-0.0.232//:ra_ap_limit": "limit", + "@vendor__ra_ap_limit-0.0.248//:ra_ap_limit": "limit", }, compile_data = glob( include = ["**"], @@ -84,11 +84,11 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__drop_bomb-0.1.5//:drop_bomb", - "@vendor__ra-ap-rustc_lexer-0.63.0//:ra_ap_rustc_lexer", - "@vendor__ra_ap_limit-0.0.232//:ra_ap_limit", + "@vendor__ra-ap-rustc_lexer-0.80.0//:ra_ap_rustc_lexer", + "@vendor__ra_ap_limit-0.0.248//:ra_ap_limit", "@vendor__tracing-0.1.40//:tracing", ], ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_paths-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_paths-0.0.248.bazel similarity index 99% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_paths-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_paths-0.0.248.bazel index 631643fbc6be..4a9ced62104c 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_paths-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_paths-0.0.248.bazel @@ -80,7 +80,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__camino-1.1.9//:camino", "@vendor__serde-1.0.214//:serde", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_proc_macro_api-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_proc_macro_api-0.0.248.bazel similarity index 82% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_proc_macro_api-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_proc_macro_api-0.0.248.bazel index fa3b71f570cd..628b21bd8437 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_proc_macro_api-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_proc_macro_api-0.0.248.bazel @@ -17,12 +17,12 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db": "base_db", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern": "intern", - "@vendor__ra_ap_paths-0.0.232//:ra_ap_paths": "paths", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span": "span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt": "tt", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db": "base_db", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern": "intern", + "@vendor__ra_ap_paths-0.0.248//:ra_ap_paths": "paths", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span": "span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt": "tt", }, compile_data = glob( include = ["**"], @@ -85,16 +85,16 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__indexmap-2.6.0//:indexmap", - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", - "@vendor__ra_ap_paths-0.0.232//:ra_ap_paths", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", + "@vendor__ra_ap_paths-0.0.248//:ra_ap_paths", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__serde-1.0.214//:serde", "@vendor__serde_json-1.0.133//:serde_json", "@vendor__tracing-0.1.40//:tracing", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_profile-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_profile-0.0.248.bazel similarity index 99% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_profile-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_profile-0.0.248.bazel index b91c889ab5c3..3ba78826cfc9 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_profile-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_profile-0.0.248.bazel @@ -77,7 +77,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__cfg-if-1.0.0//:cfg_if", "@vendor__libc-0.2.162//:libc", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_project_model-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_project_model-0.0.248.bazel similarity index 81% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_project_model-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_project_model-0.0.248.bazel index 5608e6dd6b0d..c0f1c0db972d 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_project_model-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_project_model-0.0.248.bazel @@ -17,13 +17,13 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db": "base_db", - "@vendor__ra_ap_cfg-0.0.232//:ra_ap_cfg": "cfg", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern": "intern", - "@vendor__ra_ap_paths-0.0.232//:ra_ap_paths": "paths", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span": "span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_toolchain-0.0.232//:ra_ap_toolchain": "toolchain", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db": "base_db", + "@vendor__ra_ap_cfg-0.0.248//:ra_ap_cfg": "cfg", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern": "intern", + "@vendor__ra_ap_paths-0.0.248//:ra_ap_paths": "paths", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span": "span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_toolchain-0.0.248//:ra_ap_toolchain": "toolchain", }, compile_data = glob( include = ["**"], @@ -86,20 +86,20 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__anyhow-1.0.93//:anyhow", "@vendor__cargo_metadata-0.18.1//:cargo_metadata", "@vendor__itertools-0.12.1//:itertools", "@vendor__la-arena-0.3.1//:la_arena", - "@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db", - "@vendor__ra_ap_cfg-0.0.232//:ra_ap_cfg", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", - "@vendor__ra_ap_paths-0.0.232//:ra_ap_paths", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_toolchain-0.0.232//:ra_ap_toolchain", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db", + "@vendor__ra_ap_cfg-0.0.248//:ra_ap_cfg", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", + "@vendor__ra_ap_paths-0.0.248//:ra_ap_paths", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__ra_ap_toolchain-0.0.248//:ra_ap_toolchain", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__semver-1.0.23//:semver", "@vendor__serde-1.0.214//:serde", "@vendor__serde_json-1.0.133//:serde_json", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_salsa-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_salsa-0.0.248.bazel similarity index 95% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_salsa-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_salsa-0.0.248.bazel index b448b6c1919b..39779afa6708 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_salsa-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_salsa-0.0.248.bazel @@ -11,7 +11,7 @@ load("@rules_rust//rust:defs.bzl", "rust_library") package(default_visibility = ["//visibility:public"]) rust_library( - name = "salsa", + name = "ra_salsa", srcs = glob( include = ["**/*.rs"], allow_empty = True, @@ -31,7 +31,7 @@ rust_library( crate_root = "src/lib.rs", edition = "2021", proc_macro_deps = [ - "@vendor__ra_ap_salsa-macros-0.0.232//:salsa_macros", + "@vendor__ra_ap_salsa-macros-0.0.248//:ra_salsa_macros", ], rustc_flags = [ "--cap-lints=allow", @@ -80,14 +80,14 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__indexmap-2.6.0//:indexmap", "@vendor__itertools-0.12.1//:itertools", "@vendor__lock_api-0.4.12//:lock_api", "@vendor__oorandom-11.1.4//:oorandom", "@vendor__parking_lot-0.12.3//:parking_lot", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__smallvec-1.13.2//:smallvec", "@vendor__tracing-0.1.40//:tracing", "@vendor__triomphe-0.1.14//:triomphe", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_salsa-macros-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_salsa-macros-0.0.248.bazel similarity index 98% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_salsa-macros-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_salsa-macros-0.0.248.bazel index c5eba6cdaa2b..bc91e481d5b0 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_salsa-macros-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_salsa-macros-0.0.248.bazel @@ -11,7 +11,7 @@ load("@rules_rust//rust:defs.bzl", "rust_proc_macro") package(default_visibility = ["//visibility:public"]) rust_proc_macro( - name = "salsa_macros", + name = "ra_salsa_macros", srcs = glob( include = ["**/*.rs"], allow_empty = True, @@ -77,7 +77,7 @@ rust_proc_macro( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__heck-0.4.1//:heck", "@vendor__proc-macro2-1.0.89//:proc_macro2", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_span-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_span-0.0.248.bazel similarity index 88% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_span-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_span-0.0.248.bazel index 83cd6321f379..3232e9ecf219 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_span-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_span-0.0.248.bazel @@ -17,9 +17,9 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax": "syntax", - "@vendor__ra_ap_vfs-0.0.232//:ra_ap_vfs": "vfs", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax": "syntax", + "@vendor__ra_ap_vfs-0.0.248//:ra_ap_vfs": "vfs", }, compile_data = glob( include = ["**"], @@ -82,15 +82,15 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__hashbrown-0.14.5//:hashbrown", "@vendor__la-arena-0.3.1//:la_arena", - "@vendor__ra_ap_salsa-0.0.232//:salsa", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax", - "@vendor__ra_ap_vfs-0.0.232//:ra_ap_vfs", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra_ap_salsa-0.0.248//:ra_salsa", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax", + "@vendor__ra_ap_vfs-0.0.248//:ra_ap_vfs", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__text-size-1.1.1//:text_size", ], ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_stdx-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_stdx-0.0.248.bazel similarity index 99% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_stdx-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_stdx-0.0.248.bazel index d342495ff508..fa2df2db1c8a 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_stdx-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_stdx-0.0.248.bazel @@ -77,7 +77,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__always-assert-0.2.0//:always_assert", "@vendor__crossbeam-channel-0.5.13//:crossbeam_channel", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_syntax-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_syntax-0.0.248.bazel similarity index 87% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_syntax-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_syntax-0.0.248.bazel index 47005eb05673..2f9c748f8429 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_syntax-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_syntax-0.0.248.bazel @@ -17,9 +17,8 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_parser-0.0.232//:ra_ap_parser": "parser", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_text_edit-0.0.232//:ra_ap_text_edit": "text_edit", + "@vendor__ra_ap_parser-0.0.248//:ra_ap_parser": "parser", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", }, compile_data = glob( include = ["**"], @@ -82,19 +81,18 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__cov-mark-2.0.0//:cov_mark", "@vendor__either-1.13.0//:either", "@vendor__indexmap-2.6.0//:indexmap", "@vendor__itertools-0.12.1//:itertools", - "@vendor__ra-ap-rustc_lexer-0.63.0//:ra_ap_rustc_lexer", - "@vendor__ra_ap_parser-0.0.232//:ra_ap_parser", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_text_edit-0.0.232//:ra_ap_text_edit", + "@vendor__ra-ap-rustc_lexer-0.80.0//:ra_ap_rustc_lexer", + "@vendor__ra_ap_parser-0.0.248//:ra_ap_parser", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", "@vendor__rowan-0.15.15//:rowan", - "@vendor__rustc-hash-1.1.0//:rustc_hash", - "@vendor__smol_str-0.2.2//:smol_str", + "@vendor__rustc-hash-2.1.0//:rustc_hash", + "@vendor__smol_str-0.3.2//:smol_str", "@vendor__tracing-0.1.40//:tracing", "@vendor__triomphe-0.1.14//:triomphe", ], diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_syntax-bridge-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_syntax-bridge-0.0.248.bazel similarity index 82% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_syntax-bridge-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_syntax-bridge-0.0.248.bazel index 5cf3b23802fb..c2aeeca2816a 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_syntax-bridge-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_syntax-bridge-0.0.248.bazel @@ -17,12 +17,12 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern": "intern", - "@vendor__ra_ap_parser-0.0.232//:ra_ap_parser": "parser", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span": "span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax": "syntax", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt": "tt", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern": "intern", + "@vendor__ra_ap_parser-0.0.248//:ra_ap_parser": "parser", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span": "span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax": "syntax", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt": "tt", }, compile_data = glob( include = ["**"], @@ -85,15 +85,15 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", - "@vendor__ra_ap_parser-0.0.232//:ra_ap_parser", - "@vendor__ra_ap_span-0.0.232//:ra_ap_span", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax", - "@vendor__ra_ap_tt-0.0.232//:ra_ap_tt", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", + "@vendor__ra_ap_parser-0.0.248//:ra_ap_parser", + "@vendor__ra_ap_span-0.0.248//:ra_ap_span", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax", + "@vendor__ra_ap_tt-0.0.248//:ra_ap_tt", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__tracing-0.1.40//:tracing", ], ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_toolchain-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_toolchain-0.0.248.bazel similarity index 99% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_toolchain-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_toolchain-0.0.248.bazel index badcaa2f8123..52fabfc9f334 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_toolchain-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_toolchain-0.0.248.bazel @@ -77,7 +77,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__camino-1.1.9//:camino", "@vendor__home-0.5.9//:home", diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_tt-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_tt-0.0.248.bazel similarity index 91% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_tt-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_tt-0.0.248.bazel index bfd3751c49b0..ba0c694c1477 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_tt-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_tt-0.0.248.bazel @@ -17,8 +17,8 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern": "intern", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern": "intern", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", }, compile_data = glob( include = ["**"], @@ -81,12 +81,12 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__arrayvec-0.7.6//:arrayvec", - "@vendor__ra-ap-rustc_lexer-0.63.0//:ra_ap_rustc_lexer", - "@vendor__ra_ap_intern-0.0.232//:ra_ap_intern", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", + "@vendor__ra-ap-rustc_lexer-0.80.0//:ra_ap_rustc_lexer", + "@vendor__ra_ap_intern-0.0.248//:ra_ap_intern", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", "@vendor__text-size-1.1.1//:text_size", ], ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_vfs-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_vfs-0.0.248.bazel similarity index 92% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_vfs-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_vfs-0.0.248.bazel index 99585402a00f..68c39bcf8431 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_vfs-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_vfs-0.0.248.bazel @@ -17,8 +17,8 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_paths-0.0.232//:ra_ap_paths": "paths", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_paths-0.0.248//:ra_ap_paths": "paths", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", }, compile_data = glob( include = ["**"], @@ -81,15 +81,15 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__crossbeam-channel-0.5.13//:crossbeam_channel", "@vendor__fst-0.4.7//:fst", "@vendor__indexmap-2.6.0//:indexmap", "@vendor__nohash-hasher-0.2.0//:nohash_hasher", - "@vendor__ra_ap_paths-0.0.232//:ra_ap_paths", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__ra_ap_paths-0.0.248//:ra_ap_paths", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__tracing-0.1.40//:tracing", ], ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_vfs-notify-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_vfs-notify-0.0.248.bazel similarity index 90% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_vfs-notify-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_vfs-notify-0.0.248.bazel index b9587c0142ac..5de8018e7056 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_vfs-notify-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_vfs-notify-0.0.248.bazel @@ -17,9 +17,9 @@ rust_library( allow_empty = True, ), aliases = { - "@vendor__ra_ap_paths-0.0.232//:ra_ap_paths": "paths", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx": "stdx", - "@vendor__ra_ap_vfs-0.0.232//:ra_ap_vfs": "vfs", + "@vendor__ra_ap_paths-0.0.248//:ra_ap_paths": "paths", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx": "stdx", + "@vendor__ra_ap_vfs-0.0.248//:ra_ap_vfs": "vfs", }, compile_data = glob( include = ["**"], @@ -82,15 +82,15 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", + version = "0.0.248", deps = [ "@vendor__crossbeam-channel-0.5.13//:crossbeam_channel", "@vendor__notify-6.1.1//:notify", - "@vendor__ra_ap_paths-0.0.232//:ra_ap_paths", - "@vendor__ra_ap_stdx-0.0.232//:ra_ap_stdx", - "@vendor__ra_ap_vfs-0.0.232//:ra_ap_vfs", + "@vendor__ra_ap_paths-0.0.248//:ra_ap_paths", + "@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx", + "@vendor__ra_ap_vfs-0.0.248//:ra_ap_vfs", "@vendor__rayon-1.10.0//:rayon", - "@vendor__rustc-hash-1.1.0//:rustc_hash", + "@vendor__rustc-hash-2.1.0//:rustc_hash", "@vendor__tracing-0.1.40//:tracing", "@vendor__walkdir-2.5.0//:walkdir", ], diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_text_edit-0.0.232.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.rustc-hash-2.1.0.bazel similarity index 94% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_text_edit-0.0.232.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.rustc-hash-2.1.0.bazel index 7631c485b7c5..2c4966d04034 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.ra_ap_text_edit-0.0.232.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.rustc-hash-2.1.0.bazel @@ -11,7 +11,7 @@ load("@rules_rust//rust:defs.bzl", "rust_library") package(default_visibility = ["//visibility:public"]) rust_library( - name = "ra_ap_text_edit", + name = "rustc_hash", srcs = glob( include = ["**/*.rs"], allow_empty = True, @@ -28,6 +28,10 @@ rust_library( "WORKSPACE.bazel", ], ), + crate_features = [ + "default", + "std", + ], crate_root = "src/lib.rs", edition = "2021", rustc_flags = [ @@ -35,7 +39,7 @@ rust_library( ], tags = [ "cargo-bazel", - "crate-name=ra_ap_text_edit", + "crate-name=rustc-hash", "manual", "noclippy", "norustfmt", @@ -77,9 +81,5 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.0.232", - deps = [ - "@vendor__itertools-0.12.1//:itertools", - "@vendor__text-size-1.1.1//:text_size", - ], + version = "2.1.0", ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.smol_str-0.2.2.bazel b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.smol_str-0.3.2.bazel similarity index 98% rename from misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.smol_str-0.2.2.bazel rename to misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.smol_str-0.3.2.bazel index 233563672c47..885f8d305538 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.smol_str-0.2.2.bazel +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/BUILD.smol_str-0.3.2.bazel @@ -33,7 +33,7 @@ rust_library( "std", ], crate_root = "src/lib.rs", - edition = "2018", + edition = "2021", rustc_flags = [ "--cap-lints=allow", ], @@ -81,5 +81,5 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.2.2", + version = "0.3.2", ) diff --git a/misc/bazel/3rdparty/tree_sitter_extractors_deps/defs.bzl b/misc/bazel/3rdparty/tree_sitter_extractors_deps/defs.bzl index dfdfdd8560df..787924afa2d5 100644 --- a/misc/bazel/3rdparty/tree_sitter_extractors_deps/defs.bzl +++ b/misc/bazel/3rdparty/tree_sitter_extractors_deps/defs.bzl @@ -310,9 +310,11 @@ _NORMAL_DEPENDENCIES = { }, "rust/ast-generator": { _COMMON_CONDITION: { - "itertools": Label("@vendor__itertools-0.10.5//:itertools"), + "either": Label("@vendor__either-1.13.0//:either"), + "itertools": Label("@vendor__itertools-0.12.1//:itertools"), "proc-macro2": Label("@vendor__proc-macro2-1.0.89//:proc_macro2"), "quote": Label("@vendor__quote-1.0.37//:quote"), + "ra_ap_stdx": Label("@vendor__ra_ap_stdx-0.0.248//:ra_ap_stdx"), "ungrammar": Label("@vendor__ungrammar-1.16.1//:ungrammar"), }, }, @@ -328,20 +330,20 @@ _NORMAL_DEPENDENCIES = { "itertools": Label("@vendor__itertools-0.13.0//:itertools"), "log": Label("@vendor__log-0.4.22//:log"), "num-traits": Label("@vendor__num-traits-0.2.19//:num_traits"), - "ra_ap_base_db": Label("@vendor__ra_ap_base_db-0.0.232//:ra_ap_base_db"), - "ra_ap_cfg": Label("@vendor__ra_ap_cfg-0.0.232//:ra_ap_cfg"), - "ra_ap_hir": Label("@vendor__ra_ap_hir-0.0.232//:ra_ap_hir"), - "ra_ap_hir_def": Label("@vendor__ra_ap_hir_def-0.0.232//:ra_ap_hir_def"), - "ra_ap_hir_expand": Label("@vendor__ra_ap_hir_expand-0.0.232//:ra_ap_hir_expand"), - "ra_ap_ide_db": Label("@vendor__ra_ap_ide_db-0.0.232//:ra_ap_ide_db"), - "ra_ap_intern": Label("@vendor__ra_ap_intern-0.0.232//:ra_ap_intern"), - "ra_ap_load-cargo": Label("@vendor__ra_ap_load-cargo-0.0.232//:ra_ap_load_cargo"), - "ra_ap_parser": Label("@vendor__ra_ap_parser-0.0.232//:ra_ap_parser"), - "ra_ap_paths": Label("@vendor__ra_ap_paths-0.0.232//:ra_ap_paths"), - "ra_ap_project_model": Label("@vendor__ra_ap_project_model-0.0.232//:ra_ap_project_model"), - "ra_ap_span": Label("@vendor__ra_ap_span-0.0.232//:ra_ap_span"), - "ra_ap_syntax": Label("@vendor__ra_ap_syntax-0.0.232//:ra_ap_syntax"), - "ra_ap_vfs": Label("@vendor__ra_ap_vfs-0.0.232//:ra_ap_vfs"), + "ra_ap_base_db": Label("@vendor__ra_ap_base_db-0.0.248//:ra_ap_base_db"), + "ra_ap_cfg": Label("@vendor__ra_ap_cfg-0.0.248//:ra_ap_cfg"), + "ra_ap_hir": Label("@vendor__ra_ap_hir-0.0.248//:ra_ap_hir"), + "ra_ap_hir_def": Label("@vendor__ra_ap_hir_def-0.0.248//:ra_ap_hir_def"), + "ra_ap_hir_expand": Label("@vendor__ra_ap_hir_expand-0.0.248//:ra_ap_hir_expand"), + "ra_ap_ide_db": Label("@vendor__ra_ap_ide_db-0.0.248//:ra_ap_ide_db"), + "ra_ap_intern": Label("@vendor__ra_ap_intern-0.0.248//:ra_ap_intern"), + "ra_ap_load-cargo": Label("@vendor__ra_ap_load-cargo-0.0.248//:ra_ap_load_cargo"), + "ra_ap_parser": Label("@vendor__ra_ap_parser-0.0.248//:ra_ap_parser"), + "ra_ap_paths": Label("@vendor__ra_ap_paths-0.0.248//:ra_ap_paths"), + "ra_ap_project_model": Label("@vendor__ra_ap_project_model-0.0.248//:ra_ap_project_model"), + "ra_ap_span": Label("@vendor__ra_ap_span-0.0.248//:ra_ap_span"), + "ra_ap_syntax": Label("@vendor__ra_ap_syntax-0.0.248//:ra_ap_syntax"), + "ra_ap_vfs": Label("@vendor__ra_ap_vfs-0.0.248//:ra_ap_vfs"), "serde": Label("@vendor__serde-1.0.214//:serde"), "serde_json": Label("@vendor__serde_json-1.0.133//:serde_json"), "serde_with": Label("@vendor__serde_with-3.11.0//:serde_with"), @@ -790,6 +792,16 @@ def crate_repositories(): build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.bitflags-2.6.0.bazel"), ) + maybe( + http_archive, + name = "vendor__borsh-1.5.3", + sha256 = "2506947f73ad44e344215ccd6403ac2ae18cd8e046e581a441bf8d199f257f03", + type = "tar.gz", + urls = ["https://static.crates.io/crates/borsh/1.5.3/download"], + strip_prefix = "borsh-1.5.3", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.borsh-1.5.3.bazel"), + ) + maybe( http_archive, name = "vendor__bstr-1.10.0", @@ -880,6 +892,16 @@ def crate_repositories(): build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.cfg-if-1.0.0.bazel"), ) + maybe( + http_archive, + name = "vendor__cfg_aliases-0.2.1", + sha256 = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724", + type = "tar.gz", + urls = ["https://static.crates.io/crates/cfg_aliases/0.2.1/download"], + strip_prefix = "cfg_aliases-0.2.1", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.cfg_aliases-0.2.1.bazel"), + ) + maybe( http_archive, name = "vendor__chalk-derive-0.98.0", @@ -1530,16 +1552,6 @@ def crate_repositories(): build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.is_terminal_polyfill-1.70.1.bazel"), ) - maybe( - http_archive, - name = "vendor__itertools-0.10.5", - sha256 = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473", - type = "tar.gz", - urls = ["https://static.crates.io/crates/itertools/0.10.5/download"], - strip_prefix = "itertools-0.10.5", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.itertools-0.10.5.bazel"), - ) - maybe( http_archive, name = "vendor__itertools-0.12.1", @@ -1982,332 +1994,322 @@ def crate_repositories(): maybe( http_archive, - name = "vendor__ra-ap-rustc_abi-0.63.0", - sha256 = "b011c39d409940a890414e3a7b239762ac16d88029ad71b050a8374831b93790", - type = "tar.gz", - urls = ["https://static.crates.io/crates/ra-ap-rustc_abi/0.63.0/download"], - strip_prefix = "ra-ap-rustc_abi-0.63.0", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra-ap-rustc_abi-0.63.0.bazel"), - ) - - maybe( - http_archive, - name = "vendor__ra-ap-rustc_index-0.63.0", - sha256 = "9027acdee649b0b27eb10b7db5be833efee3362d394935c5eed8f0745a9d43ce", + name = "vendor__ra-ap-rustc_abi-0.80.0", + sha256 = "613760a3071b25a67a8d7bc97b37c7fd4722562e9479137b83ae9cf8f8c1601a", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra-ap-rustc_index/0.63.0/download"], - strip_prefix = "ra-ap-rustc_index-0.63.0", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra-ap-rustc_index-0.63.0.bazel"), + urls = ["https://static.crates.io/crates/ra-ap-rustc_abi/0.80.0/download"], + strip_prefix = "ra-ap-rustc_abi-0.80.0", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra-ap-rustc_abi-0.80.0.bazel"), ) maybe( http_archive, - name = "vendor__ra-ap-rustc_index_macros-0.63.0", - sha256 = "540b86dc0384141ac8e825fc2874cd44bffd4277d99d8ec63ee416f1a98d5997", + name = "vendor__ra-ap-rustc_index-0.80.0", + sha256 = "5b2bc6b4ecede8ff28295041e22c2e66853f8e0125990c05135bad3c30bad12c", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra-ap-rustc_index_macros/0.63.0/download"], - strip_prefix = "ra-ap-rustc_index_macros-0.63.0", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra-ap-rustc_index_macros-0.63.0.bazel"), + urls = ["https://static.crates.io/crates/ra-ap-rustc_index/0.80.0/download"], + strip_prefix = "ra-ap-rustc_index-0.80.0", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra-ap-rustc_index-0.80.0.bazel"), ) maybe( http_archive, - name = "vendor__ra-ap-rustc_lexer-0.63.0", - sha256 = "3bdf98bb457b47b9ae4aeebf867d0ca440c86925e0b6381658c4a02589748c9d", + name = "vendor__ra-ap-rustc_index_macros-0.80.0", + sha256 = "2374a39fb2d92d0509178c2b442eadca3cc10e403ef9729a040c1855b08ff261", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra-ap-rustc_lexer/0.63.0/download"], - strip_prefix = "ra-ap-rustc_lexer-0.63.0", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra-ap-rustc_lexer-0.63.0.bazel"), + urls = ["https://static.crates.io/crates/ra-ap-rustc_index_macros/0.80.0/download"], + strip_prefix = "ra-ap-rustc_index_macros-0.80.0", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra-ap-rustc_index_macros-0.80.0.bazel"), ) maybe( http_archive, - name = "vendor__ra-ap-rustc_parse_format-0.63.0", - sha256 = "e8fe3556ab6311bb775220563a300e2bf62ec56404521fe0c511a583937683d5", + name = "vendor__ra-ap-rustc_lexer-0.80.0", + sha256 = "5a2cf8e48b69af3ecc29ed3449892e8a999111d2f75212a78aa242e117cf1711", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra-ap-rustc_parse_format/0.63.0/download"], - strip_prefix = "ra-ap-rustc_parse_format-0.63.0", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra-ap-rustc_parse_format-0.63.0.bazel"), + urls = ["https://static.crates.io/crates/ra-ap-rustc_lexer/0.80.0/download"], + strip_prefix = "ra-ap-rustc_lexer-0.80.0", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra-ap-rustc_lexer-0.80.0.bazel"), ) maybe( http_archive, - name = "vendor__ra-ap-rustc_pattern_analysis-0.63.0", - sha256 = "1709080fdeb5db630e1c2644026c2962aaa32416cd92f0190c04b0c21e114b91", + name = "vendor__ra-ap-rustc_parse_format-0.80.0", + sha256 = "8d6f59a22b559263c5c42747ae362cf5d4fb272293fa119a4623f8ec288f9656", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra-ap-rustc_pattern_analysis/0.63.0/download"], - strip_prefix = "ra-ap-rustc_pattern_analysis-0.63.0", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra-ap-rustc_pattern_analysis-0.63.0.bazel"), + urls = ["https://static.crates.io/crates/ra-ap-rustc_parse_format/0.80.0/download"], + strip_prefix = "ra-ap-rustc_parse_format-0.80.0", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra-ap-rustc_parse_format-0.80.0.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_base_db-0.0.232", - sha256 = "3bcb25fbab872d3f85798739db011212a98444e55163d71edb1dfdb509e616b3", + name = "vendor__ra-ap-rustc_pattern_analysis-0.80.0", + sha256 = "a7d0575b54ffe09bc5d2f158454bc05f0c30c01d9992310965f854be50ae22b8", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_base_db/0.0.232/download"], - strip_prefix = "ra_ap_base_db-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_base_db-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra-ap-rustc_pattern_analysis/0.80.0/download"], + strip_prefix = "ra-ap-rustc_pattern_analysis-0.80.0", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra-ap-rustc_pattern_analysis-0.80.0.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_cfg-0.0.232", - sha256 = "fbec14556d01bf34fb795d70941f929ed4c024dee11be9c99c712ea92225a20b", + name = "vendor__ra_ap_base_db-0.0.248", + sha256 = "321b770750ff90b03af539ac6d47ca46208f6f747be97c0a4aaca3a428447c8f", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_cfg/0.0.232/download"], - strip_prefix = "ra_ap_cfg-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_cfg-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_base_db/0.0.248/download"], + strip_prefix = "ra_ap_base_db-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_base_db-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_hir-0.0.232", - sha256 = "c7c38520eb4770af561c34b908431f4e548c3282093cf3daf3c6e566d99a2937", + name = "vendor__ra_ap_cfg-0.0.248", + sha256 = "5023f50ebcf3656d85b96565dac56d50cc3e3d959c41592f457d2230d7be706a", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_hir/0.0.232/download"], - strip_prefix = "ra_ap_hir-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_hir-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_cfg/0.0.248/download"], + strip_prefix = "ra_ap_cfg-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_cfg-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_hir_def-0.0.232", - sha256 = "f00b546cacca816b94a12d51df076d50965d6bae411fd68f9024420bfa026e7b", + name = "vendor__ra_ap_hir-0.0.248", + sha256 = "d07a9a085cf581d5f503aa467d32bbd1e5e7f94a3e86f881ca9c19b379570c62", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_hir_def/0.0.232/download"], - strip_prefix = "ra_ap_hir_def-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_hir_def-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_hir/0.0.248/download"], + strip_prefix = "ra_ap_hir-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_hir-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_hir_expand-0.0.232", - sha256 = "b6c9675e1331dadf43cbc807ae39d2c289b8ba2af33a8e197c0927d926a6610d", + name = "vendor__ra_ap_hir_def-0.0.248", + sha256 = "825c47fec7aab22c38ad9eba1d76102a95a6eb089e85b4e58308089d056c3cdc", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_hir_expand/0.0.232/download"], - strip_prefix = "ra_ap_hir_expand-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_hir_expand-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_hir_def/0.0.248/download"], + strip_prefix = "ra_ap_hir_def-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_hir_def-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_hir_ty-0.0.232", - sha256 = "e308aa1b956137c82547a8b46eb60c6ee295628322e00aa5266a1ea5ea8e522e", + name = "vendor__ra_ap_hir_expand-0.0.248", + sha256 = "1084b708f90de31888deb6e7f9cda5ebb8e6a59484143a3df0a4007dcf496b17", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_hir_ty/0.0.232/download"], - strip_prefix = "ra_ap_hir_ty-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_hir_ty-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_hir_expand/0.0.248/download"], + strip_prefix = "ra_ap_hir_expand-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_hir_expand-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_ide_db-0.0.232", - sha256 = "95ea9c17702025001c1672ab23bf9be3cf40785376c0f368a10fe812db1327eb", + name = "vendor__ra_ap_hir_ty-0.0.248", + sha256 = "400a42e442b6d8f64adea48a8c9e39f76a1b9ed9964fd40222bd2d7cfe0a5a79", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_ide_db/0.0.232/download"], - strip_prefix = "ra_ap_ide_db-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_ide_db-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_hir_ty/0.0.248/download"], + strip_prefix = "ra_ap_hir_ty-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_hir_ty-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_intern-0.0.232", - sha256 = "78e0928f2c403ebea95f97a38a720900216ea896212347e893a37ae7c1419030", + name = "vendor__ra_ap_ide_db-0.0.248", + sha256 = "d4ced45b107a8f4c1a4cee68b270d08832327b34ad0bf7794879342ac280bc8b", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_intern/0.0.232/download"], - strip_prefix = "ra_ap_intern-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_intern-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_ide_db/0.0.248/download"], + strip_prefix = "ra_ap_ide_db-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_ide_db-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_limit-0.0.232", - sha256 = "60972e02e4dfe05b2755e09a6b11b27db8a47cea01cd2697e77a34c4cf60b31c", + name = "vendor__ra_ap_intern-0.0.248", + sha256 = "e5432d6cf7382c06dab31b6c1772446c8576dd19fcbc007bc8a6fd8bca3d424d", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_limit/0.0.232/download"], - strip_prefix = "ra_ap_limit-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_limit-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_intern/0.0.248/download"], + strip_prefix = "ra_ap_intern-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_intern-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_load-cargo-0.0.232", - sha256 = "82e6f24b61f1ef1f3a756493d1fb7e711b69b2e4d5f4746fcb959313dfd41471", + name = "vendor__ra_ap_limit-0.0.248", + sha256 = "822501c9f88830865ebedf944130dbe0603fa8d30a5da90f3224c1dcca2660de", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_load-cargo/0.0.232/download"], - strip_prefix = "ra_ap_load-cargo-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_load-cargo-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_limit/0.0.248/download"], + strip_prefix = "ra_ap_limit-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_limit-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_mbe-0.0.232", - sha256 = "714a0997373ff65e7748e7768186598c6831e95f71639f66c3f79ef591c9d496", + name = "vendor__ra_ap_load-cargo-0.0.248", + sha256 = "2d5b002bcda197a4e9442c827dc86305d8fc1820fbbcb9814ff9bbc2c50f4e9c", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_mbe/0.0.232/download"], - strip_prefix = "ra_ap_mbe-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_mbe-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_load-cargo/0.0.248/download"], + strip_prefix = "ra_ap_load-cargo-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_load-cargo-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_parser-0.0.232", - sha256 = "8da0314db93eabbd2b92e13907690782688cfc8aaaf42b8e6726e7f5b338c2e3", + name = "vendor__ra_ap_mbe-0.0.248", + sha256 = "b4fce40b490b6bbca3d033f4cbf32ef07069423aa3edc1e00ec26ddabf503866", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_parser/0.0.232/download"], - strip_prefix = "ra_ap_parser-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_parser-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_mbe/0.0.248/download"], + strip_prefix = "ra_ap_mbe-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_mbe-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_paths-0.0.232", - sha256 = "2cc084003225204a9e5e50957a565f1cc23ebef18cd779f31563a8d2180f8940", + name = "vendor__ra_ap_parser-0.0.248", + sha256 = "573c14046174e3ef03a9d73841dbc52fd1d6224fffd1a0713aef95b45e024f75", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_paths/0.0.232/download"], - strip_prefix = "ra_ap_paths-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_paths-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_parser/0.0.248/download"], + strip_prefix = "ra_ap_parser-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_parser-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_proc_macro_api-0.0.232", - sha256 = "809670622e93f105abc60ea0cb371cfaff990beae7ce534b127fb39b423b4b92", + name = "vendor__ra_ap_paths-0.0.248", + sha256 = "57aa6e3d7c45806434cdee09aa74b561723552732e8b089213fe821ae84404ec", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_proc_macro_api/0.0.232/download"], - strip_prefix = "ra_ap_proc_macro_api-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_proc_macro_api-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_paths/0.0.248/download"], + strip_prefix = "ra_ap_paths-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_paths-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_profile-0.0.232", - sha256 = "572193d698a8bc4245463688d10f20932ab04940d5b6c32be457bc45dc1e6ab0", + name = "vendor__ra_ap_proc_macro_api-0.0.248", + sha256 = "79d9595e05b422f3258c51f9a529129c9a59f99037deac652ff2cdd0c97e0bda", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_profile/0.0.232/download"], - strip_prefix = "ra_ap_profile-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_profile-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_proc_macro_api/0.0.248/download"], + strip_prefix = "ra_ap_proc_macro_api-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_proc_macro_api-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_project_model-0.0.232", - sha256 = "db83d1844c74b22c110c4b8e8f2519be2b1723964008527281a11c3398749756", + name = "vendor__ra_ap_profile-0.0.248", + sha256 = "459551d7e5a6dda9204c3741215c1f6a97cf6f4553e3c29294f7f8ac0ec91f57", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_project_model/0.0.232/download"], - strip_prefix = "ra_ap_project_model-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_project_model-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_profile/0.0.248/download"], + strip_prefix = "ra_ap_profile-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_profile-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_salsa-0.0.232", - sha256 = "370b302873eeafd07ccc6a714fc9395cae11e385955ccb78081093ee3b86f94e", + name = "vendor__ra_ap_project_model-0.0.248", + sha256 = "171aacd6d1642f9d821f27fc318a503cfe10c5c6294193c401e991266e38a583", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_salsa/0.0.232/download"], - strip_prefix = "ra_ap_salsa-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_salsa-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_project_model/0.0.248/download"], + strip_prefix = "ra_ap_project_model-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_project_model-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_salsa-macros-0.0.232", - sha256 = "414ff383af5abdb731917ca46c1a0f6b291278430736fe1ff2430a8548206a62", + name = "vendor__ra_ap_salsa-0.0.248", + sha256 = "504314128b0998f54d8e253a328a53e2a697f579f8d1f194b52f77cd8a540e36", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_salsa-macros/0.0.232/download"], - strip_prefix = "ra_ap_salsa-macros-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_salsa-macros-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_salsa/0.0.248/download"], + strip_prefix = "ra_ap_salsa-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_salsa-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_span-0.0.232", - sha256 = "e1b982f799c7a8051219902ff5c1974ee353ac6ca2aa5b17ab0e3db9b8d8a7bf", + name = "vendor__ra_ap_salsa-macros-0.0.248", + sha256 = "d957f6ec9a6f11cf9c8ce0f27711f4f9813bdd690b3efa6a280cb06a75b5a0fc", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_span/0.0.232/download"], - strip_prefix = "ra_ap_span-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_span-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_salsa-macros/0.0.248/download"], + strip_prefix = "ra_ap_salsa-macros-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_salsa-macros-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_stdx-0.0.232", - sha256 = "bb63ff9d6b11b4553fc0835f16705975258905e3b1230fcf1ddbf24c46aff69d", + name = "vendor__ra_ap_span-0.0.248", + sha256 = "5c82fd3ff10c25958db0c254f8f4378cb75069017b675f4fe4c5e7d5f2827e71", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_stdx/0.0.232/download"], - strip_prefix = "ra_ap_stdx-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_stdx-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_span/0.0.248/download"], + strip_prefix = "ra_ap_span-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_span-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_syntax-0.0.232", - sha256 = "f1ac12decfd5cadd880177316fc16afc1f2c67f241f6290b51fd6f222e2bd4d5", + name = "vendor__ra_ap_stdx-0.0.248", + sha256 = "0be113ed187f4bf5403ebd8256d3d4aead8d265f670d534c646edea68516ef86", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_syntax/0.0.232/download"], - strip_prefix = "ra_ap_syntax-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_syntax-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_stdx/0.0.248/download"], + strip_prefix = "ra_ap_stdx-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_stdx-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_syntax-bridge-0.0.232", - sha256 = "8d57ec874cf6d45d25ce5d63dbfdf60912d5a33138855c4ab7e4314cfd01f6fa", + name = "vendor__ra_ap_syntax-0.0.248", + sha256 = "d5af8d681a9fd408be1b17f3b150eb98907fb72b9b44000ada9c3e9b6c059188", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_syntax-bridge/0.0.232/download"], - strip_prefix = "ra_ap_syntax-bridge-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_syntax-bridge-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_syntax/0.0.248/download"], + strip_prefix = "ra_ap_syntax-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_syntax-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_text_edit-0.0.232", - sha256 = "7cb72ee1901baec556f4f2ef77e287d749ac0e973f063990672d6207b076aeac", + name = "vendor__ra_ap_syntax-bridge-0.0.248", + sha256 = "8f957885289e9789dffcd81ebfa4c2d49be3fad41f7718ffeacb3599f6d88678", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_text_edit/0.0.232/download"], - strip_prefix = "ra_ap_text_edit-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_text_edit-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_syntax-bridge/0.0.248/download"], + strip_prefix = "ra_ap_syntax-bridge-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_syntax-bridge-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_toolchain-0.0.232", - sha256 = "897200f5ab09335a77e9c8344fd8d5fd67f312c402179a378613421b4dec8d8f", + name = "vendor__ra_ap_toolchain-0.0.248", + sha256 = "e067bd4107ec52a241b68398539632df0a850013907070002d4d403c3691e51c", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_toolchain/0.0.232/download"], - strip_prefix = "ra_ap_toolchain-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_toolchain-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_toolchain/0.0.248/download"], + strip_prefix = "ra_ap_toolchain-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_toolchain-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_tt-0.0.232", - sha256 = "a9730313c495e88a89ee33f6e34205a92652d9c9a5061ebaed59436058a33000", + name = "vendor__ra_ap_tt-0.0.248", + sha256 = "4c38deb50d7a26663c28deb01e5611b3b92b5a87298940e0638589f03c3faf62", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_tt/0.0.232/download"], - strip_prefix = "ra_ap_tt-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_tt-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_tt/0.0.248/download"], + strip_prefix = "ra_ap_tt-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_tt-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_vfs-0.0.232", - sha256 = "d833eaa5422de9bb51ab1841fe505ed00fb51e64cce397e21de6c324bbcbffa0", + name = "vendor__ra_ap_vfs-0.0.248", + sha256 = "168a9378dd3f185ae94dda9c35e4d468a8ff105c8f4bb57e17f6e2312d84d1a8", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_vfs/0.0.232/download"], - strip_prefix = "ra_ap_vfs-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_vfs-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_vfs/0.0.248/download"], + strip_prefix = "ra_ap_vfs-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_vfs-0.0.248.bazel"), ) maybe( http_archive, - name = "vendor__ra_ap_vfs-notify-0.0.232", - sha256 = "388ea8af458d6f06ed6b67c8e3dcf634a798cb3f4e62df51bd6be00c2b219bca", + name = "vendor__ra_ap_vfs-notify-0.0.248", + sha256 = "1a5e13d88bf8bbd8dd02c96dd8d89e6cebc2757a0edf13b3b85007024fcf216c", type = "tar.gz", - urls = ["https://static.crates.io/crates/ra_ap_vfs-notify/0.0.232/download"], - strip_prefix = "ra_ap_vfs-notify-0.0.232", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_vfs-notify-0.0.232.bazel"), + urls = ["https://static.crates.io/crates/ra_ap_vfs-notify/0.0.248/download"], + strip_prefix = "ra_ap_vfs-notify-0.0.248", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.ra_ap_vfs-notify-0.0.248.bazel"), ) maybe( @@ -2440,6 +2442,16 @@ def crate_repositories(): build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.rustc-hash-1.1.0.bazel"), ) + maybe( + http_archive, + name = "vendor__rustc-hash-2.1.0", + sha256 = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497", + type = "tar.gz", + urls = ["https://static.crates.io/crates/rustc-hash/2.1.0/download"], + strip_prefix = "rustc-hash-2.1.0", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.rustc-hash-2.1.0.bazel"), + ) + maybe( new_git_repository, name = "vendor__rustc_apfloat-0.2.1-llvm-462a31f5a5ab", @@ -2591,12 +2603,12 @@ def crate_repositories(): maybe( http_archive, - name = "vendor__smol_str-0.2.2", - sha256 = "dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead", + name = "vendor__smol_str-0.3.2", + sha256 = "9676b89cd56310a87b93dec47b11af744f34d5fc9f367b829474eec0a891350d", type = "tar.gz", - urls = ["https://static.crates.io/crates/smol_str/0.2.2/download"], - strip_prefix = "smol_str-0.2.2", - build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.smol_str-0.2.2.bazel"), + urls = ["https://static.crates.io/crates/smol_str/0.3.2/download"], + strip_prefix = "smol_str-0.3.2", + build_file = Label("//misc/bazel/3rdparty/tree_sitter_extractors_deps:BUILD.smol_str-0.3.2.bazel"), ) maybe( @@ -3325,12 +3337,13 @@ def crate_repositories(): struct(repo = "vendor__chrono-0.4.38", is_dev_dep = False), struct(repo = "vendor__clap-4.5.20", is_dev_dep = False), struct(repo = "vendor__dunce-1.0.5", is_dev_dep = False), + struct(repo = "vendor__either-1.13.0", is_dev_dep = False), struct(repo = "vendor__encoding-0.2.33", is_dev_dep = False), struct(repo = "vendor__figment-0.10.19", is_dev_dep = False), struct(repo = "vendor__flate2-1.0.34", is_dev_dep = False), struct(repo = "vendor__glob-0.3.1", is_dev_dep = False), struct(repo = "vendor__globset-0.4.15", is_dev_dep = False), - struct(repo = "vendor__itertools-0.10.5", is_dev_dep = False), + struct(repo = "vendor__itertools-0.12.1", is_dev_dep = False), struct(repo = "vendor__itertools-0.13.0", is_dev_dep = False), struct(repo = "vendor__lazy_static-1.5.0", is_dev_dep = False), struct(repo = "vendor__log-0.4.22", is_dev_dep = False), @@ -3338,20 +3351,21 @@ def crate_repositories(): struct(repo = "vendor__num_cpus-1.16.0", is_dev_dep = False), struct(repo = "vendor__proc-macro2-1.0.89", is_dev_dep = False), struct(repo = "vendor__quote-1.0.37", is_dev_dep = False), - struct(repo = "vendor__ra_ap_base_db-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_cfg-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_hir-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_hir_def-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_hir_expand-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_ide_db-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_intern-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_load-cargo-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_parser-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_paths-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_project_model-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_span-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_syntax-0.0.232", is_dev_dep = False), - struct(repo = "vendor__ra_ap_vfs-0.0.232", is_dev_dep = False), + struct(repo = "vendor__ra_ap_base_db-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_cfg-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_hir-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_hir_def-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_hir_expand-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_ide_db-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_intern-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_load-cargo-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_parser-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_paths-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_project_model-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_span-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_stdx-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_syntax-0.0.248", is_dev_dep = False), + struct(repo = "vendor__ra_ap_vfs-0.0.248", is_dev_dep = False), struct(repo = "vendor__rayon-1.10.0", is_dev_dep = False), struct(repo = "vendor__regex-1.11.1", is_dev_dep = False), struct(repo = "vendor__serde-1.0.214", is_dev_dep = False), diff --git a/rust/ast-generator/Cargo.toml b/rust/ast-generator/Cargo.toml index 5eaff201b209..4060e501f921 100644 --- a/rust/ast-generator/Cargo.toml +++ b/rust/ast-generator/Cargo.toml @@ -6,6 +6,8 @@ edition = "2021" # When updating these dependencies, run `rust/update_cargo_deps.sh` [dependencies] ungrammar = "1.16.1" -proc-macro2 = "1.0.33" -quote = "1.0.12" -itertools = "0.10.1" +proc-macro2 = "1.0.47" +quote = "1.0.20" +either = "1.9.0" +ra_ap_stdx = "0.0.248" +itertools = "0.12.0" diff --git a/rust/ast-generator/rust.ungram b/rust/ast-generator/rust.ungram index 43375ce6ae05..a6d3d939a090 100644 --- a/rust/ast-generator/rust.ungram +++ b/rust/ast-generator/rust.ungram @@ -37,7 +37,7 @@ Path = PathSegment = '::'? NameRef | NameRef GenericArgList? -| NameRef ParamList RetType? +| NameRef ParenthesizedArgList RetType? | NameRef ReturnTypeSyntax | '<' Type ('as' PathType)? '>' @@ -49,6 +49,9 @@ ReturnTypeSyntax = // Generics // //*************************// +ParenthesizedArgList = + '::'? '(' (TypeArg (',' TypeArg)* ','?)? ')' + GenericArgList = '::'? '<' (GenericArg (',' GenericArg)* ','?)? '>' @@ -190,7 +193,7 @@ UseTreeList = Fn = Attr* Visibility? - 'default'? 'const'? 'async'? 'gen'? 'unsafe'? Abi? + 'default'? 'const'? 'async'? 'gen'? 'unsafe'? 'safe'? Abi? 'fn' Name GenericParamList? ParamList RetType? WhereClause? (body:BlockExpr | ';') @@ -284,6 +287,7 @@ Const = Static = Attr* Visibility? + 'unsafe'? 'safe'? 'static' 'mut'? Name ':' Type ('=' body:Expr)? ';' @@ -391,8 +395,33 @@ Expr = OffsetOfExpr = Attr* 'builtin' '#' 'offset_of' '(' Type ',' fields:(NameRef ('.' NameRef)* ) ')' +// asm := "asm!(" format_string *("," format_string) *("," operand) [","] ")" +// global_asm := "global_asm!(" format_string *("," format_string) *("," operand) [","] ")" +// format_string := STRING_LITERAL / RAW_STRING_LITERAL AsmExpr = - Attr* 'builtin' '#' 'asm' '(' Expr ')' + Attr* 'builtin' '#' 'asm' '(' template:(Expr (',' Expr)*) (AsmPiece (',' AsmPiece)*)? ','? ')' + +// operand_expr := expr / "_" / expr "=>" expr / expr "=>" "_" +AsmOperandExpr = in_expr:Expr ('=>' out_expr:Expr)? +// dir_spec := "in" / "out" / "lateout" / "inout" / "inlateout" +AsmDirSpec = 'in' | 'out' | 'lateout' | 'inout' | 'inlateout' +// reg_spec := / "\"" "\"" +AsmRegSpec = '@string' | NameRef +// reg_operand := [ident "="] dir_spec "(" reg_spec ")" operand_expr +AsmRegOperand = AsmDirSpec '(' AsmRegSpec ')' AsmOperandExpr +// clobber_abi := "clobber_abi(" *("," ) [","] ")" +AsmClobberAbi = 'clobber_abi' '(' ('@string' (',' '@string')* ','?) ')' +// option := "pure" / "nomem" / "readonly" / "preserves_flags" / "noreturn" / "nostack" / "att_syntax" / "raw" +AsmOption = 'pure' | 'nomem' | 'readonly' | 'preserves_flags' | 'noreturn' | 'nostack' | 'att_syntax' | 'raw' | 'may_unwind' +// options := "options(" option *("," option) [","] ")" +AsmOptions = 'options' '(' (AsmOption (',' AsmOption)* ','?) ')' +AsmLabel = 'label' BlockExpr +AsmSym = 'sym' Path +AsmConst = 'const' Expr +// operand := reg_operand / clobber_abi / options +AsmOperand = AsmRegOperand | AsmLabel | AsmSym | AsmConst +AsmOperandNamed = (Name '=')? AsmOperand +AsmPiece = AsmOperandNamed | AsmClobberAbi | AsmOptions FormatArgsExpr = Attr* 'builtin' '#' 'format_args' '(' @@ -631,7 +660,14 @@ TypeBoundList = TypeBound = Lifetime | ('~' 'const' | 'const')? 'async'? '?'? Type -| 'use' GenericParamList +| 'use' UseBoundGenericArgs + +UseBoundGenericArgs = + '<' (UseBoundGenericArg (',' UseBoundGenericArg)* ','?)? '>' + +UseBoundGenericArg = + Lifetime +| NameRef //************************// // Patterns // @@ -703,7 +739,7 @@ PathPat = Path OrPat = - (Pat ('|' Pat)* '|'?) + '|'? (Pat ('|' Pat)*) BoxPat = 'box' Pat diff --git a/rust/ast-generator/src/codegen/grammar.rs b/rust/ast-generator/src/codegen/grammar.rs index 69875866ba52..bbafc435a5db 100644 --- a/rust/ast-generator/src/codegen/grammar.rs +++ b/rust/ast-generator/src/codegen/grammar.rs @@ -11,9 +11,11 @@ use std::{ fs, }; +use either::Either; use itertools::Itertools; use proc_macro2::{Punct, Spacing}; use quote::{format_ident, quote}; +use ra_ap_stdx::panic_context; use ungrammar::{Grammar, Rule}; use crate::{ @@ -495,6 +497,7 @@ fn generate_syntax_kinds(grammar: KindsSrc) -> String { .map(|name| format_ident!("{}", name)) .collect::>(); + // FIXME: This generates enum kinds? let nodes = grammar .nodes .iter() @@ -757,6 +760,7 @@ pub(crate) fn lower(grammar: &Grammar) -> AstSrc { for &node in &nodes { let name = grammar[node].name.clone(); let rule = &grammar[node].rule; + let _g = panic_context::enter(name.clone()); match lower_enum(grammar, rule) { Some(variants) => { let enum_src = AstEnumSrc { @@ -904,11 +908,16 @@ fn lower_separated_list( Rule::Seq(it) => it, _ => return false, }; - let (node, repeat, trailing_sep) = match rule.as_slice() { + + let (nt, repeat, trailing_sep) = match rule.as_slice() { [Rule::Node(node), Rule::Rep(repeat), Rule::Opt(trailing_sep)] => { - (node, repeat, Some(trailing_sep)) + (Either::Left(node), repeat, Some(trailing_sep)) + } + [Rule::Node(node), Rule::Rep(repeat)] => (Either::Left(node), repeat, None), + [Rule::Token(token), Rule::Rep(repeat), Rule::Opt(trailing_sep)] => { + (Either::Right(token), repeat, Some(trailing_sep)) } - [Rule::Node(node), Rule::Rep(repeat)] => (node, repeat, None), + [Rule::Token(token), Rule::Rep(repeat)] => (Either::Right(token), repeat, None), _ => return false, }; let repeat = match &**repeat { @@ -917,21 +926,34 @@ fn lower_separated_list( }; if !matches!( repeat.as_slice(), - [comma, Rule::Node(n)] - if trailing_sep.map_or(true, |it| comma == &**it) && n == node + [comma, nt_] + if trailing_sep.map_or(true, |it| comma == &**it) && match (nt, nt_) { + (Either::Left(node), Rule::Node(nt_)) => node == nt_, + (Either::Right(token), Rule::Token(nt_)) => token == nt_, + _ => false, + } ) { return false; } - let ty = grammar[*node].name.clone(); - let name = label - .cloned() - .unwrap_or_else(|| pluralize(&to_lower_snake_case(&ty))); - let field = Field::Node { - name, - ty, - cardinality: Cardinality::Many, - }; - acc.push(field); + match nt { + Either::Right(token) => { + let name = clean_token_name(&grammar[*token].name); + let field = Field::Token(name); + acc.push(field); + } + Either::Left(node) => { + let ty = grammar[*node].name.clone(); + let name = label + .cloned() + .unwrap_or_else(|| pluralize(&to_lower_snake_case(&ty))); + let field = Field::Node { + name, + ty, + cardinality: Cardinality::Many, + }; + acc.push(field); + } + } true } diff --git a/rust/ast-generator/src/codegen/grammar/ast_src.rs b/rust/ast-generator/src/codegen/grammar/ast_src.rs index 606a51b499c7..88578ce7ebb3 100644 --- a/rust/ast-generator/src/codegen/grammar/ast_src.rs +++ b/rust/ast-generator/src/codegen/grammar/ast_src.rs @@ -118,9 +118,34 @@ const CONTEXTUAL_KEYWORDS: &[&str] = &[ "dyn", "auto", "yeet", + "safe", ]; // keywords we use for special macro expansions -const CONTEXTUAL_BUILTIN_KEYWORDS: &[&str] = &["builtin", "offset_of", "format_args", "asm"]; +const CONTEXTUAL_BUILTIN_KEYWORDS: &[&str] = &[ + "asm", + "att_syntax", + "builtin", + "clobber_abi", + "format_args", + // "in", + "inlateout", + "inout", + "label", + "lateout", + "may_unwind", + "nomem", + "noreturn", + "nostack", + "offset_of", + "options", + "out", + "preserves_flags", + "pure", + // "raw", + "readonly", + "sym", +]; + // keywords that are keywords depending on the edition const EDITION_DEPENDENT_KEYWORDS: &[(&str, Edition)] = &[ ("try", Edition::Edition2018), diff --git a/rust/ast-generator/src/main.rs b/rust/ast-generator/src/main.rs index c586342856f6..1e1e96131280 100644 --- a/rust/ast-generator/src/main.rs +++ b/rust/ast-generator/src/main.rs @@ -21,6 +21,7 @@ fn class_name(type_name: &str) -> String { "Fn" => "Function".to_owned(), "Literal" => "LiteralExpr".to_owned(), "ArrayExpr" => "ArrayExprInternal".to_owned(), + "AsmOptions" => "AsmOptionsList".to_owned(), _ if type_name.ends_with("Type") => format!("{}Repr", type_name), _ => type_name.to_owned(), } diff --git a/rust/extractor/Cargo.toml b/rust/extractor/Cargo.toml index 97d348f41190..163a28b035a2 100644 --- a/rust/extractor/Cargo.toml +++ b/rust/extractor/Cargo.toml @@ -10,20 +10,20 @@ clap = { version = "4.5.16", features = ["derive"] } figment = { version = "0.10.19", features = ["env", "yaml"] } log = "0.4.22" num-traits = "0.2.19" -ra_ap_base_db = "0.0.232" -ra_ap_hir = "0.0.232" -ra_ap_hir_def = "0.0.232" -ra_ap_ide_db = "0.0.232" -ra_ap_hir_expand = "0.0.232" -ra_ap_load-cargo = "0.0.232" -ra_ap_paths = "0.0.232" -ra_ap_project_model = "0.0.232" -ra_ap_syntax = "0.0.232" -ra_ap_vfs = "0.0.232" -ra_ap_parser = "0.0.232" -ra_ap_span = "0.0.232" -ra_ap_cfg = "0.0.232" -ra_ap_intern = "0.0.232" +ra_ap_base_db = "0.0.248" +ra_ap_hir = "0.0.248" +ra_ap_hir_def = "0.0.248" +ra_ap_ide_db = "0.0.248" +ra_ap_hir_expand = "0.0.248" +ra_ap_load-cargo = "0.0.248" +ra_ap_paths = "0.0.248" +ra_ap_project_model = "0.0.248" +ra_ap_syntax = "0.0.248" +ra_ap_vfs = "0.0.248" +ra_ap_parser = "0.0.248" +ra_ap_span = "0.0.248" +ra_ap_cfg = "0.0.248" +ra_ap_intern = "0.0.248" serde = "1.0.209" serde_with = "3.9.0" stderrlog = "0.6.0" diff --git a/rust/extractor/src/config.rs b/rust/extractor/src/config.rs index 0e92e82a58cb..7d4f95d1865c 100644 --- a/rust/extractor/src/config.rs +++ b/rust/extractor/src/config.rs @@ -136,8 +136,8 @@ fn to_cfg_overrides(specs: &Vec) -> CfgOverrides { let mut disabled_cfgs = Vec::new(); let mut has_test_explicitly_enabled = false; for spec in specs { - if spec.starts_with("-") { - disabled_cfgs.push(to_cfg_override(&spec[1..])); + if let Some(spec) = spec.strip_prefix("-") { + disabled_cfgs.push(to_cfg_override(spec)); } else { enabled_cfgs.push(to_cfg_override(spec)); if spec == "test" { diff --git a/rust/extractor/src/config/deserialize_vec.rs b/rust/extractor/src/config/deserialize_vec.rs index eebe413ca298..2d63046549b9 100644 --- a/rust/extractor/src/config/deserialize_vec.rs +++ b/rust/extractor/src/config/deserialize_vec.rs @@ -41,6 +41,7 @@ impl<'de, T: From> Visitor<'de> for VectorVisitor { /// deserialize into a vector of `T` either of: /// * a sequence of elements serializable into `String`s, or /// * a single element serializable into `String`, then split on `,` and `\n` +/// /// This is required to be in scope when the `extractor_cli_config` macro is used. pub(crate) fn deserialize_newline_or_comma_separated<'a, D: Deserializer<'a>, T: From>( deserializer: D, diff --git a/rust/extractor/src/generated/.generated.list b/rust/extractor/src/generated/.generated.list index d298aadd79fb..531f5146cf85 100644 --- a/rust/extractor/src/generated/.generated.list +++ b/rust/extractor/src/generated/.generated.list @@ -1,2 +1,2 @@ mod.rs 4bcb9def847469aae9d8649461546b7c21ec97cf6e63d3cf394e339915ce65d7 4bcb9def847469aae9d8649461546b7c21ec97cf6e63d3cf394e339915ce65d7 -top.rs d6c934b738b7f071df86303f6deb2a2d18bfc7545cd487446823e97702240582 d6c934b738b7f071df86303f6deb2a2d18bfc7545cd487446823e97702240582 +top.rs f042175b9f2dc4092ed04dde2073735560a9c3050a2f07ee79193c492e91cabc f042175b9f2dc4092ed04dde2073735560a9c3050a2f07ee79193c492e91cabc diff --git a/rust/extractor/src/generated/top.rs b/rust/extractor/src/generated/top.rs index b7b00a606082..bd125a07df2e 100644 --- a/rust/extractor/src/generated/top.rs +++ b/rust/extractor/src/generated/top.rs @@ -335,6 +335,278 @@ impl From> for trap::Label { } } +#[derive(Debug)] +pub struct AsmDirSpec { + pub id: trap::TrapId, +} + +impl trap::TrapEntry for AsmDirSpec { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("asm_dir_specs", vec![id.into()]); + } +} + +impl trap::TrapClass for AsmDirSpec { + fn class_name() -> &'static str { "AsmDirSpec" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmDirSpec is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmDirSpec is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmDirSpec is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct AsmOperand { + _unused: () +} + +impl trap::TrapClass for AsmOperand { + fn class_name() -> &'static str { "AsmOperand" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOperand is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOperand is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOperand is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct AsmOperandExpr { + pub id: trap::TrapId, + pub in_expr: Option>, + pub out_expr: Option>, +} + +impl trap::TrapEntry for AsmOperandExpr { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("asm_operand_exprs", vec![id.into()]); + if let Some(v) = self.in_expr { + out.add_tuple("asm_operand_expr_in_exprs", vec![id.into(), v.into()]); + } + if let Some(v) = self.out_expr { + out.add_tuple("asm_operand_expr_out_exprs", vec![id.into(), v.into()]); + } + } +} + +impl trap::TrapClass for AsmOperandExpr { + fn class_name() -> &'static str { "AsmOperandExpr" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOperandExpr is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOperandExpr is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOperandExpr is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct AsmOption { + pub id: trap::TrapId, + pub is_raw: bool, +} + +impl trap::TrapEntry for AsmOption { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("asm_options", vec![id.into()]); + if self.is_raw { + out.add_tuple("asm_option_is_raw", vec![id.into()]); + } + } +} + +impl trap::TrapClass for AsmOption { + fn class_name() -> &'static str { "AsmOption" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOption is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOption is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOption is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct AsmPiece { + _unused: () +} + +impl trap::TrapClass for AsmPiece { + fn class_name() -> &'static str { "AsmPiece" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmPiece is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmPiece is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmPiece is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct AsmRegSpec { + pub id: trap::TrapId, + pub name_ref: Option>, +} + +impl trap::TrapEntry for AsmRegSpec { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("asm_reg_specs", vec![id.into()]); + if let Some(v) = self.name_ref { + out.add_tuple("asm_reg_spec_name_refs", vec![id.into(), v.into()]); + } + } +} + +impl trap::TrapClass for AsmRegSpec { + fn class_name() -> &'static str { "AsmRegSpec" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmRegSpec is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmRegSpec is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmRegSpec is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + #[derive(Debug)] pub struct AssocItem { _unused: () @@ -1103,56 +1375,6 @@ impl From> for trap::Label { } } -#[derive(Debug)] -pub struct Lifetime { - pub id: trap::TrapId, - pub text: Option, -} - -impl trap::TrapEntry for Lifetime { - fn extract_id(&mut self) -> trap::TrapId { - std::mem::replace(&mut self.id, trap::TrapId::Star) - } - - fn emit(self, id: trap::Label, out: &mut trap::Writer) { - out.add_tuple("lifetimes", vec![id.into()]); - if let Some(v) = self.text { - out.add_tuple("lifetime_texts", vec![id.into(), v.into()]); - } - } -} - -impl trap::TrapClass for Lifetime { - fn class_name() -> &'static str { "Lifetime" } -} - -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme Lifetime is a subclass of AstNode - unsafe { - Self::from_untyped(value.as_untyped()) - } - } -} - -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme Lifetime is a subclass of Element - unsafe { - Self::from_untyped(value.as_untyped()) - } - } -} - -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme Lifetime is a subclass of Locatable - unsafe { - Self::from_untyped(value.as_untyped()) - } - } -} - #[derive(Debug)] pub struct MacroItems { pub id: trap::TrapId, @@ -1536,69 +1758,19 @@ impl From> for trap::Label { } #[derive(Debug)] -pub struct NameRef { - pub id: trap::TrapId, - pub text: Option, +pub struct ParamBase { + _unused: () } -impl trap::TrapEntry for NameRef { - fn extract_id(&mut self) -> trap::TrapId { - std::mem::replace(&mut self.id, trap::TrapId::Star) - } +impl trap::TrapClass for ParamBase { + fn class_name() -> &'static str { "ParamBase" } +} - fn emit(self, id: trap::Label, out: &mut trap::Writer) { - out.add_tuple("name_refs", vec![id.into()]); - if let Some(v) = self.text { - out.add_tuple("name_ref_texts", vec![id.into(), v.into()]); - } - } -} - -impl trap::TrapClass for NameRef { - fn class_name() -> &'static str { "NameRef" } -} - -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme NameRef is a subclass of AstNode - unsafe { - Self::from_untyped(value.as_untyped()) - } - } -} - -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme NameRef is a subclass of Element - unsafe { - Self::from_untyped(value.as_untyped()) - } - } -} - -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme NameRef is a subclass of Locatable - unsafe { - Self::from_untyped(value.as_untyped()) - } - } -} - -#[derive(Debug)] -pub struct ParamBase { - _unused: () -} - -impl trap::TrapClass for ParamBase { - fn class_name() -> &'static str { "ParamBase" } -} - -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme ParamBase is a subclass of AstNode - unsafe { - Self::from_untyped(value.as_untyped()) +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme ParamBase is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) } } } @@ -1675,6 +1847,56 @@ impl From> for trap::Label { } } +#[derive(Debug)] +pub struct ParenthesizedArgList { + pub id: trap::TrapId, + pub type_args: Vec>, +} + +impl trap::TrapEntry for ParenthesizedArgList { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("parenthesized_arg_lists", vec![id.into()]); + for (i, v) in self.type_args.into_iter().enumerate() { + out.add_tuple("parenthesized_arg_list_type_args", vec![id.into(), i.into(), v.into()]); + } + } +} + +impl trap::TrapClass for ParenthesizedArgList { + fn class_name() -> &'static str { "ParenthesizedArgList" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme ParenthesizedArgList is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme ParenthesizedArgList is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme ParenthesizedArgList is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + #[derive(Debug)] pub struct Pat { _unused: () @@ -1770,7 +1992,7 @@ pub struct PathSegment { pub id: trap::TrapId, pub generic_arg_list: Option>, pub name_ref: Option>, - pub param_list: Option>, + pub parenthesized_arg_list: Option>, pub path_type: Option>, pub ret_type: Option>, pub return_type_syntax: Option>, @@ -1790,8 +2012,8 @@ impl trap::TrapEntry for PathSegment { if let Some(v) = self.name_ref { out.add_tuple("path_segment_name_refs", vec![id.into(), v.into()]); } - if let Some(v) = self.param_list { - out.add_tuple("path_segment_param_lists", vec![id.into(), v.into()]); + if let Some(v) = self.parenthesized_arg_list { + out.add_tuple("path_segment_parenthesized_arg_lists", vec![id.into(), v.into()]); } if let Some(v) = self.path_type { out.add_tuple("path_segment_path_types", vec![id.into(), v.into()]); @@ -2611,11 +2833,11 @@ impl From> for trap::Label { #[derive(Debug)] pub struct TypeBound { pub id: trap::TrapId, - pub generic_param_list: Option>, pub is_async: bool, pub is_const: bool, pub lifetime: Option>, pub type_repr: Option>, + pub use_bound_generic_args: Option>, } impl trap::TrapEntry for TypeBound { @@ -2625,9 +2847,6 @@ impl trap::TrapEntry for TypeBound { fn emit(self, id: trap::Label, out: &mut trap::Writer) { out.add_tuple("type_bounds", vec![id.into()]); - if let Some(v) = self.generic_param_list { - out.add_tuple("type_bound_generic_param_lists", vec![id.into(), v.into()]); - } if self.is_async { out.add_tuple("type_bound_is_async", vec![id.into()]); } @@ -2640,6 +2859,9 @@ impl trap::TrapEntry for TypeBound { if let Some(v) = self.type_repr { out.add_tuple("type_bound_type_reprs", vec![id.into(), v.into()]); } + if let Some(v) = self.use_bound_generic_args { + out.add_tuple("type_bound_use_bound_generic_args", vec![id.into(), v.into()]); + } } } @@ -2760,6 +2982,92 @@ impl From> for trap::Label { } } +#[derive(Debug)] +pub struct UseBoundGenericArg { + _unused: () +} + +impl trap::TrapClass for UseBoundGenericArg { + fn class_name() -> &'static str { "UseBoundGenericArg" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme UseBoundGenericArg is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme UseBoundGenericArg is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme UseBoundGenericArg is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct UseBoundGenericArgs { + pub id: trap::TrapId, + pub use_bound_generic_args: Vec>, +} + +impl trap::TrapEntry for UseBoundGenericArgs { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("use_bound_generic_args", vec![id.into()]); + for (i, v) in self.use_bound_generic_args.into_iter().enumerate() { + out.add_tuple("use_bound_generic_args_use_bound_generic_args", vec![id.into(), i.into(), v.into()]); + } + } +} + +impl trap::TrapClass for UseBoundGenericArgs { + fn class_name() -> &'static str { "UseBoundGenericArgs" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme UseBoundGenericArgs is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme UseBoundGenericArgs is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme UseBoundGenericArgs is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + #[derive(Debug)] pub struct UseTree { pub id: trap::TrapId, @@ -2974,44 +3282,480 @@ pub struct WhereClause { pub predicates: Vec>, } -impl trap::TrapEntry for WhereClause { +impl trap::TrapEntry for WhereClause { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("where_clauses", vec![id.into()]); + for (i, v) in self.predicates.into_iter().enumerate() { + out.add_tuple("where_clause_predicates", vec![id.into(), i.into(), v.into()]); + } + } +} + +impl trap::TrapClass for WhereClause { + fn class_name() -> &'static str { "WhereClause" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme WhereClause is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme WhereClause is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme WhereClause is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct WherePred { + pub id: trap::TrapId, + pub generic_param_list: Option>, + pub lifetime: Option>, + pub type_repr: Option>, + pub type_bound_list: Option>, +} + +impl trap::TrapEntry for WherePred { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("where_preds", vec![id.into()]); + if let Some(v) = self.generic_param_list { + out.add_tuple("where_pred_generic_param_lists", vec![id.into(), v.into()]); + } + if let Some(v) = self.lifetime { + out.add_tuple("where_pred_lifetimes", vec![id.into(), v.into()]); + } + if let Some(v) = self.type_repr { + out.add_tuple("where_pred_type_reprs", vec![id.into(), v.into()]); + } + if let Some(v) = self.type_bound_list { + out.add_tuple("where_pred_type_bound_lists", vec![id.into(), v.into()]); + } + } +} + +impl trap::TrapClass for WherePred { + fn class_name() -> &'static str { "WherePred" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme WherePred is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme WherePred is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme WherePred is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct ArrayExprInternal { + pub id: trap::TrapId, + pub attrs: Vec>, + pub exprs: Vec>, + pub is_semicolon: bool, +} + +impl trap::TrapEntry for ArrayExprInternal { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("array_expr_internals", vec![id.into()]); + for (i, v) in self.attrs.into_iter().enumerate() { + out.add_tuple("array_expr_internal_attrs", vec![id.into(), i.into(), v.into()]); + } + for (i, v) in self.exprs.into_iter().enumerate() { + out.add_tuple("array_expr_internal_exprs", vec![id.into(), i.into(), v.into()]); + } + if self.is_semicolon { + out.add_tuple("array_expr_internal_is_semicolon", vec![id.into()]); + } + } +} + +impl trap::TrapClass for ArrayExprInternal { + fn class_name() -> &'static str { "ArrayExprInternal" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme ArrayExprInternal is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme ArrayExprInternal is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme ArrayExprInternal is a subclass of Expr + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme ArrayExprInternal is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct ArrayTypeRepr { + pub id: trap::TrapId, + pub const_arg: Option>, + pub element_type_repr: Option>, +} + +impl trap::TrapEntry for ArrayTypeRepr { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("array_type_reprs", vec![id.into()]); + if let Some(v) = self.const_arg { + out.add_tuple("array_type_repr_const_args", vec![id.into(), v.into()]); + } + if let Some(v) = self.element_type_repr { + out.add_tuple("array_type_repr_element_type_reprs", vec![id.into(), v.into()]); + } + } +} + +impl trap::TrapClass for ArrayTypeRepr { + fn class_name() -> &'static str { "ArrayTypeRepr" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme ArrayTypeRepr is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme ArrayTypeRepr is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme ArrayTypeRepr is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme ArrayTypeRepr is a subclass of TypeRepr + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct AsmClobberAbi { + pub id: trap::TrapId, +} + +impl trap::TrapEntry for AsmClobberAbi { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("asm_clobber_abis", vec![id.into()]); + } +} + +impl trap::TrapClass for AsmClobberAbi { + fn class_name() -> &'static str { "AsmClobberAbi" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmClobberAbi is a subclass of AsmPiece + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmClobberAbi is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmClobberAbi is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmClobberAbi is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct AsmConst { + pub id: trap::TrapId, + pub expr: Option>, + pub is_const: bool, +} + +impl trap::TrapEntry for AsmConst { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("asm_consts", vec![id.into()]); + if let Some(v) = self.expr { + out.add_tuple("asm_const_exprs", vec![id.into(), v.into()]); + } + if self.is_const { + out.add_tuple("asm_const_is_const", vec![id.into()]); + } + } +} + +impl trap::TrapClass for AsmConst { + fn class_name() -> &'static str { "AsmConst" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmConst is a subclass of AsmOperand + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmConst is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmConst is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmConst is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct AsmExpr { + pub id: trap::TrapId, + pub asm_pieces: Vec>, + pub attrs: Vec>, + pub template: Vec>, +} + +impl trap::TrapEntry for AsmExpr { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("asm_exprs", vec![id.into()]); + for (i, v) in self.asm_pieces.into_iter().enumerate() { + out.add_tuple("asm_expr_asm_pieces", vec![id.into(), i.into(), v.into()]); + } + for (i, v) in self.attrs.into_iter().enumerate() { + out.add_tuple("asm_expr_attrs", vec![id.into(), i.into(), v.into()]); + } + for (i, v) in self.template.into_iter().enumerate() { + out.add_tuple("asm_expr_templates", vec![id.into(), i.into(), v.into()]); + } + } +} + +impl trap::TrapClass for AsmExpr { + fn class_name() -> &'static str { "AsmExpr" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmExpr is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmExpr is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmExpr is a subclass of Expr + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmExpr is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +#[derive(Debug)] +pub struct AsmLabel { + pub id: trap::TrapId, + pub block_expr: Option>, +} + +impl trap::TrapEntry for AsmLabel { fn extract_id(&mut self) -> trap::TrapId { std::mem::replace(&mut self.id, trap::TrapId::Star) } fn emit(self, id: trap::Label, out: &mut trap::Writer) { - out.add_tuple("where_clauses", vec![id.into()]); - for (i, v) in self.predicates.into_iter().enumerate() { - out.add_tuple("where_clause_predicates", vec![id.into(), i.into(), v.into()]); + out.add_tuple("asm_labels", vec![id.into()]); + if let Some(v) = self.block_expr { + out.add_tuple("asm_label_block_exprs", vec![id.into(), v.into()]); } } } -impl trap::TrapClass for WhereClause { - fn class_name() -> &'static str { "WhereClause" } +impl trap::TrapClass for AsmLabel { + fn class_name() -> &'static str { "AsmLabel" } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme WhereClause is a subclass of AstNode +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmLabel is a subclass of AsmOperand unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme WhereClause is a subclass of Element +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmLabel is a subclass of AstNode unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme WhereClause is a subclass of Locatable +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmLabel is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmLabel is a subclass of Locatable unsafe { Self::from_untyped(value.as_untyped()) } @@ -3019,61 +3763,62 @@ impl From> for trap::Label { } #[derive(Debug)] -pub struct WherePred { - pub id: trap::TrapId, - pub generic_param_list: Option>, - pub lifetime: Option>, - pub type_repr: Option>, - pub type_bound_list: Option>, +pub struct AsmOperandNamed { + pub id: trap::TrapId, + pub asm_operand: Option>, + pub name: Option>, } -impl trap::TrapEntry for WherePred { +impl trap::TrapEntry for AsmOperandNamed { fn extract_id(&mut self) -> trap::TrapId { std::mem::replace(&mut self.id, trap::TrapId::Star) } fn emit(self, id: trap::Label, out: &mut trap::Writer) { - out.add_tuple("where_preds", vec![id.into()]); - if let Some(v) = self.generic_param_list { - out.add_tuple("where_pred_generic_param_lists", vec![id.into(), v.into()]); - } - if let Some(v) = self.lifetime { - out.add_tuple("where_pred_lifetimes", vec![id.into(), v.into()]); + out.add_tuple("asm_operand_nameds", vec![id.into()]); + if let Some(v) = self.asm_operand { + out.add_tuple("asm_operand_named_asm_operands", vec![id.into(), v.into()]); } - if let Some(v) = self.type_repr { - out.add_tuple("where_pred_type_reprs", vec![id.into(), v.into()]); - } - if let Some(v) = self.type_bound_list { - out.add_tuple("where_pred_type_bound_lists", vec![id.into(), v.into()]); + if let Some(v) = self.name { + out.add_tuple("asm_operand_named_names", vec![id.into(), v.into()]); } } } -impl trap::TrapClass for WherePred { - fn class_name() -> &'static str { "WherePred" } +impl trap::TrapClass for AsmOperandNamed { + fn class_name() -> &'static str { "AsmOperandNamed" } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme WherePred is a subclass of AstNode +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOperandNamed is a subclass of AsmPiece unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme WherePred is a subclass of Element +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOperandNamed is a subclass of AstNode unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme WherePred is a subclass of Locatable +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOperandNamed is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOperandNamed is a subclass of Locatable unsafe { Self::from_untyped(value.as_untyped()) } @@ -3081,66 +3826,58 @@ impl From> for trap::Label { } #[derive(Debug)] -pub struct ArrayExprInternal { - pub id: trap::TrapId, - pub attrs: Vec>, - pub exprs: Vec>, - pub is_semicolon: bool, +pub struct AsmOptionsList { + pub id: trap::TrapId, + pub asm_options: Vec>, } -impl trap::TrapEntry for ArrayExprInternal { +impl trap::TrapEntry for AsmOptionsList { fn extract_id(&mut self) -> trap::TrapId { std::mem::replace(&mut self.id, trap::TrapId::Star) } fn emit(self, id: trap::Label, out: &mut trap::Writer) { - out.add_tuple("array_expr_internals", vec![id.into()]); - for (i, v) in self.attrs.into_iter().enumerate() { - out.add_tuple("array_expr_internal_attrs", vec![id.into(), i.into(), v.into()]); - } - for (i, v) in self.exprs.into_iter().enumerate() { - out.add_tuple("array_expr_internal_exprs", vec![id.into(), i.into(), v.into()]); - } - if self.is_semicolon { - out.add_tuple("array_expr_internal_is_semicolon", vec![id.into()]); + out.add_tuple("asm_options_lists", vec![id.into()]); + for (i, v) in self.asm_options.into_iter().enumerate() { + out.add_tuple("asm_options_list_asm_options", vec![id.into(), i.into(), v.into()]); } } } -impl trap::TrapClass for ArrayExprInternal { - fn class_name() -> &'static str { "ArrayExprInternal" } +impl trap::TrapClass for AsmOptionsList { + fn class_name() -> &'static str { "AsmOptionsList" } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme ArrayExprInternal is a subclass of AstNode +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOptionsList is a subclass of AsmPiece unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme ArrayExprInternal is a subclass of Element +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOptionsList is a subclass of AstNode unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme ArrayExprInternal is a subclass of Expr +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOptionsList is a subclass of Element unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme ArrayExprInternal is a subclass of Locatable +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmOptionsList is a subclass of Locatable unsafe { Self::from_untyped(value.as_untyped()) } @@ -3148,62 +3885,66 @@ impl From> for trap::Label { } #[derive(Debug)] -pub struct ArrayTypeRepr { - pub id: trap::TrapId, - pub const_arg: Option>, - pub element_type_repr: Option>, +pub struct AsmRegOperand { + pub id: trap::TrapId, + pub asm_dir_spec: Option>, + pub asm_operand_expr: Option>, + pub asm_reg_spec: Option>, } -impl trap::TrapEntry for ArrayTypeRepr { +impl trap::TrapEntry for AsmRegOperand { fn extract_id(&mut self) -> trap::TrapId { std::mem::replace(&mut self.id, trap::TrapId::Star) } fn emit(self, id: trap::Label, out: &mut trap::Writer) { - out.add_tuple("array_type_reprs", vec![id.into()]); - if let Some(v) = self.const_arg { - out.add_tuple("array_type_repr_const_args", vec![id.into(), v.into()]); + out.add_tuple("asm_reg_operands", vec![id.into()]); + if let Some(v) = self.asm_dir_spec { + out.add_tuple("asm_reg_operand_asm_dir_specs", vec![id.into(), v.into()]); } - if let Some(v) = self.element_type_repr { - out.add_tuple("array_type_repr_element_type_reprs", vec![id.into(), v.into()]); + if let Some(v) = self.asm_operand_expr { + out.add_tuple("asm_reg_operand_asm_operand_exprs", vec![id.into(), v.into()]); + } + if let Some(v) = self.asm_reg_spec { + out.add_tuple("asm_reg_operand_asm_reg_specs", vec![id.into(), v.into()]); } } } -impl trap::TrapClass for ArrayTypeRepr { - fn class_name() -> &'static str { "ArrayTypeRepr" } +impl trap::TrapClass for AsmRegOperand { + fn class_name() -> &'static str { "AsmRegOperand" } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme ArrayTypeRepr is a subclass of AstNode +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmRegOperand is a subclass of AsmOperand unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme ArrayTypeRepr is a subclass of Element +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmRegOperand is a subclass of AstNode unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme ArrayTypeRepr is a subclass of Locatable +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmRegOperand is a subclass of Element unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme ArrayTypeRepr is a subclass of TypeRepr +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmRegOperand is a subclass of Locatable unsafe { Self::from_untyped(value.as_untyped()) } @@ -3211,62 +3952,58 @@ impl From> for trap::Label { } #[derive(Debug)] -pub struct AsmExpr { - pub id: trap::TrapId, - pub attrs: Vec>, - pub expr: Option>, +pub struct AsmSym { + pub id: trap::TrapId, + pub path: Option>, } -impl trap::TrapEntry for AsmExpr { +impl trap::TrapEntry for AsmSym { fn extract_id(&mut self) -> trap::TrapId { std::mem::replace(&mut self.id, trap::TrapId::Star) } fn emit(self, id: trap::Label, out: &mut trap::Writer) { - out.add_tuple("asm_exprs", vec![id.into()]); - for (i, v) in self.attrs.into_iter().enumerate() { - out.add_tuple("asm_expr_attrs", vec![id.into(), i.into(), v.into()]); - } - if let Some(v) = self.expr { - out.add_tuple("asm_expr_exprs", vec![id.into(), v.into()]); + out.add_tuple("asm_syms", vec![id.into()]); + if let Some(v) = self.path { + out.add_tuple("asm_sym_paths", vec![id.into(), v.into()]); } } } -impl trap::TrapClass for AsmExpr { - fn class_name() -> &'static str { "AsmExpr" } +impl trap::TrapClass for AsmSym { + fn class_name() -> &'static str { "AsmSym" } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme AsmExpr is a subclass of AstNode +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmSym is a subclass of AsmOperand unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme AsmExpr is a subclass of Element +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmSym is a subclass of AstNode unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme AsmExpr is a subclass of Expr +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmSym is a subclass of Element unsafe { Self::from_untyped(value.as_untyped()) } } } -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme AsmExpr is a subclass of Locatable +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme AsmSym is a subclass of Locatable unsafe { Self::from_untyped(value.as_untyped()) } @@ -5178,6 +5915,65 @@ impl From> for trap::Label { } } +#[derive(Debug)] +pub struct Lifetime { + pub id: trap::TrapId, + pub text: Option, +} + +impl trap::TrapEntry for Lifetime { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("lifetimes", vec![id.into()]); + if let Some(v) = self.text { + out.add_tuple("lifetime_texts", vec![id.into(), v.into()]); + } + } +} + +impl trap::TrapClass for Lifetime { + fn class_name() -> &'static str { "Lifetime" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme Lifetime is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme Lifetime is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme Lifetime is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme Lifetime is a subclass of UseBoundGenericArg + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + #[derive(Debug)] pub struct LifetimeArg { pub id: trap::TrapId, @@ -5670,6 +6466,65 @@ impl From> for trap::Label { } } +#[derive(Debug)] +pub struct NameRef { + pub id: trap::TrapId, + pub text: Option, +} + +impl trap::TrapEntry for NameRef { + fn extract_id(&mut self) -> trap::TrapId { + std::mem::replace(&mut self.id, trap::TrapId::Star) + } + + fn emit(self, id: trap::Label, out: &mut trap::Writer) { + out.add_tuple("name_refs", vec![id.into()]); + if let Some(v) = self.text { + out.add_tuple("name_ref_texts", vec![id.into(), v.into()]); + } + } +} + +impl trap::TrapClass for NameRef { + fn class_name() -> &'static str { "NameRef" } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme NameRef is a subclass of AstNode + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme NameRef is a subclass of Element + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme NameRef is a subclass of Locatable + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + +impl From> for trap::Label { + fn from(value: trap::Label) -> Self { + // SAFETY: this is safe because in the dbscheme NameRef is a subclass of UseBoundGenericArg + unsafe { + Self::from_untyped(value.as_untyped()) + } + } +} + #[derive(Debug)] pub struct NeverTypeRepr { pub id: trap::TrapId, @@ -9544,6 +10399,7 @@ pub struct Static { pub body: Option>, pub is_mut: bool, pub is_static: bool, + pub is_unsafe: bool, pub name: Option>, pub type_repr: Option>, pub visibility: Option>, @@ -9568,6 +10424,9 @@ impl trap::TrapEntry for Static { if self.is_static { out.add_tuple("static_is_static", vec![id.into()]); } + if self.is_unsafe { + out.add_tuple("static_is_unsafe", vec![id.into()]); + } if let Some(v) = self.name { out.add_tuple("static_names", vec![id.into(), v.into()]); } diff --git a/rust/extractor/src/translate/base.rs b/rust/extractor/src/translate/base.rs index 84f8268d5046..ac13676e6904 100644 --- a/rust/extractor/src/translate/base.rs +++ b/rust/extractor/src/translate/base.rs @@ -6,7 +6,7 @@ use crate::trap::{DiagnosticSeverity, TrapFile, TrapId}; use crate::trap::{Label, TrapClass}; use itertools::Either; use log::Level; -use ra_ap_base_db::salsa::InternKey; +use ra_ap_base_db::ra_salsa::InternKey; use ra_ap_base_db::CrateOrigin; use ra_ap_hir::db::ExpandDatabase; use ra_ap_hir::{ @@ -242,7 +242,7 @@ impl<'a> Translator<'a> { }) { if let Some(err) = &value.err { - let (message, _error) = err.render_to_string(semantics.db); + let error = err.render_to_string(semantics.db); if err.span().anchor.file_id == semantics.hir_file_for(mcall.syntax()) { let location = err.span().range @@ -252,7 +252,7 @@ impl<'a> Translator<'a> { .get_erased(err.span().anchor.ast_id) .text_range() .start(); - self.emit_parse_error(mcall, &SyntaxError::new(message, location)); + self.emit_parse_error(mcall, &SyntaxError::new(error.message, location)); }; } for err in value.value.iter() { diff --git a/rust/extractor/src/translate/generated.rs b/rust/extractor/src/translate/generated.rs index a1c4865cf621..9116ae67c216 100644 --- a/rust/extractor/src/translate/generated.rs +++ b/rust/extractor/src/translate/generated.rs @@ -21,6 +21,23 @@ impl Translator<'_> { } } + pub(crate) fn emit_asm_operand(&mut self, node: ast::AsmOperand) -> Label { + match node { + ast::AsmOperand::AsmConst(inner) => self.emit_asm_const(inner).into(), + ast::AsmOperand::AsmLabel(inner) => self.emit_asm_label(inner).into(), + ast::AsmOperand::AsmRegOperand(inner) => self.emit_asm_reg_operand(inner).into(), + ast::AsmOperand::AsmSym(inner) => self.emit_asm_sym(inner).into(), + } + } + + pub(crate) fn emit_asm_piece(&mut self, node: ast::AsmPiece) -> Label { + match node { + ast::AsmPiece::AsmClobberAbi(inner) => self.emit_asm_clobber_abi(inner).into(), + ast::AsmPiece::AsmOperandNamed(inner) => self.emit_asm_operand_named(inner).into(), + ast::AsmPiece::AsmOptions(inner) => self.emit_asm_options(inner).into(), + } + } + pub(crate) fn emit_assoc_item(&mut self, node: ast::AssocItem) -> Label { match node { ast::AssocItem::Const(inner) => self.emit_const(inner).into(), @@ -152,6 +169,13 @@ impl Translator<'_> { } } + pub(crate) fn emit_use_bound_generic_arg(&mut self, node: ast::UseBoundGenericArg) -> Label { + match node { + ast::UseBoundGenericArg::Lifetime(inner) => self.emit_lifetime(inner).into(), + ast::UseBoundGenericArg::NameRef(inner) => self.emit_name_ref(inner).into(), + } + } + pub(crate) fn emit_item(&mut self, node: ast::Item) -> Label { match node { ast::Item::Const(inner) => self.emit_const(inner).into(), @@ -228,13 +252,49 @@ impl Translator<'_> { label } + pub(crate) fn emit_asm_clobber_abi(&mut self, node: ast::AsmClobberAbi) -> Label { + let label = self.trap.emit(generated::AsmClobberAbi { + id: TrapId::Star, + }); + self.emit_location(label, &node); + emit_detached!(AsmClobberAbi, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + + pub(crate) fn emit_asm_const(&mut self, node: ast::AsmConst) -> Label { + let expr = node.expr().map(|x| self.emit_expr(x)); + let is_const = node.const_token().is_some(); + let label = self.trap.emit(generated::AsmConst { + id: TrapId::Star, + expr, + is_const, + }); + self.emit_location(label, &node); + emit_detached!(AsmConst, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + + pub(crate) fn emit_asm_dir_spec(&mut self, node: ast::AsmDirSpec) -> Label { + let label = self.trap.emit(generated::AsmDirSpec { + id: TrapId::Star, + }); + self.emit_location(label, &node); + emit_detached!(AsmDirSpec, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + pub(crate) fn emit_asm_expr(&mut self, node: ast::AsmExpr) -> Label { + let asm_pieces = node.asm_pieces().map(|x| self.emit_asm_piece(x)).collect(); let attrs = node.attrs().map(|x| self.emit_attr(x)).collect(); - let expr = node.expr().map(|x| self.emit_expr(x)); + let template = node.template().map(|x| self.emit_expr(x)).collect(); let label = self.trap.emit(generated::AsmExpr { id: TrapId::Star, + asm_pieces, attrs, - expr, + template, }); self.emit_location(label, &node); emit_detached!(AsmExpr, self, node, label); @@ -242,6 +302,110 @@ impl Translator<'_> { label } + pub(crate) fn emit_asm_label(&mut self, node: ast::AsmLabel) -> Label { + let block_expr = node.block_expr().map(|x| self.emit_block_expr(x)); + let label = self.trap.emit(generated::AsmLabel { + id: TrapId::Star, + block_expr, + }); + self.emit_location(label, &node); + emit_detached!(AsmLabel, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + + pub(crate) fn emit_asm_operand_expr(&mut self, node: ast::AsmOperandExpr) -> Label { + let in_expr = node.in_expr().map(|x| self.emit_expr(x)); + let out_expr = node.out_expr().map(|x| self.emit_expr(x)); + let label = self.trap.emit(generated::AsmOperandExpr { + id: TrapId::Star, + in_expr, + out_expr, + }); + self.emit_location(label, &node); + emit_detached!(AsmOperandExpr, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + + pub(crate) fn emit_asm_operand_named(&mut self, node: ast::AsmOperandNamed) -> Label { + let asm_operand = node.asm_operand().map(|x| self.emit_asm_operand(x)); + let name = node.name().map(|x| self.emit_name(x)); + let label = self.trap.emit(generated::AsmOperandNamed { + id: TrapId::Star, + asm_operand, + name, + }); + self.emit_location(label, &node); + emit_detached!(AsmOperandNamed, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + + pub(crate) fn emit_asm_option(&mut self, node: ast::AsmOption) -> Label { + let is_raw = node.raw_token().is_some(); + let label = self.trap.emit(generated::AsmOption { + id: TrapId::Star, + is_raw, + }); + self.emit_location(label, &node); + emit_detached!(AsmOption, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + + pub(crate) fn emit_asm_options(&mut self, node: ast::AsmOptions) -> Label { + let asm_options = node.asm_options().map(|x| self.emit_asm_option(x)).collect(); + let label = self.trap.emit(generated::AsmOptionsList { + id: TrapId::Star, + asm_options, + }); + self.emit_location(label, &node); + emit_detached!(AsmOptionsList, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + + pub(crate) fn emit_asm_reg_operand(&mut self, node: ast::AsmRegOperand) -> Label { + let asm_dir_spec = node.asm_dir_spec().map(|x| self.emit_asm_dir_spec(x)); + let asm_operand_expr = node.asm_operand_expr().map(|x| self.emit_asm_operand_expr(x)); + let asm_reg_spec = node.asm_reg_spec().map(|x| self.emit_asm_reg_spec(x)); + let label = self.trap.emit(generated::AsmRegOperand { + id: TrapId::Star, + asm_dir_spec, + asm_operand_expr, + asm_reg_spec, + }); + self.emit_location(label, &node); + emit_detached!(AsmRegOperand, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + + pub(crate) fn emit_asm_reg_spec(&mut self, node: ast::AsmRegSpec) -> Label { + let name_ref = node.name_ref().map(|x| self.emit_name_ref(x)); + let label = self.trap.emit(generated::AsmRegSpec { + id: TrapId::Star, + name_ref, + }); + self.emit_location(label, &node); + emit_detached!(AsmRegSpec, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + + pub(crate) fn emit_asm_sym(&mut self, node: ast::AsmSym) -> Label { + let path = node.path().map(|x| self.emit_path(x)); + let label = self.trap.emit(generated::AsmSym { + id: TrapId::Star, + path, + }); + self.emit_location(label, &node); + emit_detached!(AsmSym, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + pub(crate) fn emit_assoc_item_list(&mut self, node: ast::AssocItemList) -> Label { let assoc_items = node.assoc_items().map(|x| self.emit_assoc_item(x)).collect(); let attrs = node.attrs().map(|x| self.emit_attr(x)).collect(); @@ -1438,6 +1602,18 @@ impl Translator<'_> { label } + pub(crate) fn emit_parenthesized_arg_list(&mut self, node: ast::ParenthesizedArgList) -> Label { + let type_args = node.type_args().map(|x| self.emit_type_arg(x)).collect(); + let label = self.trap.emit(generated::ParenthesizedArgList { + id: TrapId::Star, + type_args, + }); + self.emit_location(label, &node); + emit_detached!(ParenthesizedArgList, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + pub(crate) fn emit_path(&mut self, node: ast::Path) -> Label { let qualifier = node.qualifier().map(|x| self.emit_path(x)); let part = node.segment().map(|x| self.emit_path_segment(x)); @@ -1481,7 +1657,7 @@ impl Translator<'_> { pub(crate) fn emit_path_segment(&mut self, node: ast::PathSegment) -> Label { let generic_arg_list = node.generic_arg_list().map(|x| self.emit_generic_arg_list(x)); let name_ref = node.name_ref().map(|x| self.emit_name_ref(x)); - let param_list = node.param_list().map(|x| self.emit_param_list(x)); + let parenthesized_arg_list = node.parenthesized_arg_list().map(|x| self.emit_parenthesized_arg_list(x)); let path_type = node.path_type().map(|x| self.emit_path_type(x)); let ret_type = node.ret_type().map(|x| self.emit_ret_type(x)); let return_type_syntax = node.return_type_syntax().map(|x| self.emit_return_type_syntax(x)); @@ -1490,7 +1666,7 @@ impl Translator<'_> { id: TrapId::Star, generic_arg_list, name_ref, - param_list, + parenthesized_arg_list, path_type, ret_type, return_type_syntax, @@ -1875,6 +2051,7 @@ impl Translator<'_> { let body = node.body().map(|x| self.emit_expr(x)); let is_mut = node.mut_token().is_some(); let is_static = node.static_token().is_some(); + let is_unsafe = node.unsafe_token().is_some(); let name = node.name().map(|x| self.emit_name(x)); let type_repr = node.ty().map(|x| self.emit_type(x)); let visibility = node.visibility().map(|x| self.emit_visibility(x)); @@ -1884,6 +2061,7 @@ impl Translator<'_> { body, is_mut, is_static, + is_unsafe, name, type_repr, visibility, @@ -2125,18 +2303,18 @@ impl Translator<'_> { } pub(crate) fn emit_type_bound(&mut self, node: ast::TypeBound) -> Label { - let generic_param_list = node.generic_param_list().map(|x| self.emit_generic_param_list(x)); let is_async = node.async_token().is_some(); let is_const = node.const_token().is_some(); let lifetime = node.lifetime().map(|x| self.emit_lifetime(x)); let type_repr = node.ty().map(|x| self.emit_type(x)); + let use_bound_generic_args = node.use_bound_generic_args().map(|x| self.emit_use_bound_generic_args(x)); let label = self.trap.emit(generated::TypeBound { id: TrapId::Star, - generic_param_list, is_async, is_const, lifetime, type_repr, + use_bound_generic_args, }); self.emit_location(label, &node); emit_detached!(TypeBound, self, node, label); @@ -2224,6 +2402,18 @@ impl Translator<'_> { label } + pub(crate) fn emit_use_bound_generic_args(&mut self, node: ast::UseBoundGenericArgs) -> Label { + let use_bound_generic_args = node.use_bound_generic_args().map(|x| self.emit_use_bound_generic_arg(x)).collect(); + let label = self.trap.emit(generated::UseBoundGenericArgs { + id: TrapId::Star, + use_bound_generic_args, + }); + self.emit_location(label, &node); + emit_detached!(UseBoundGenericArgs, self, node, label); + self.emit_tokens(&node, label.into(), node.syntax().children_with_tokens()); + label + } + pub(crate) fn emit_use_tree(&mut self, node: ast::UseTree) -> Label { let path = node.path().map(|x| self.emit_path(x)); let rename = node.rename().map(|x| self.emit_rename(x)); diff --git a/rust/ql/.generated.list b/rust/ql/.generated.list index 41a3264fae4f..641a45f0d5df 100644 --- a/rust/ql/.generated.list +++ b/rust/ql/.generated.list @@ -1,4 +1,4 @@ -lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll 9e80eb4315a41fe2ce8649701f6306435861a048687d35de043c5a9feba195c2 8d4b43beaed489befb3ecbc2f0d52085fd157a67e3baeba78f6d312b51288b9c +lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll c25526db135a85c2a2aa4e3f2fe051a2d9d76e4225e98fbcd777e7bc6cde0844 c8acc325e4c8dbb9582bf8c97ed96d7070fc88e721041b56d7105a175aa233d4 lib/codeql/rust/elements/Abi.qll 4c973d28b6d628f5959d1f1cc793704572fd0acaae9a97dfce82ff9d73f73476 250f68350180af080f904cd34cb2af481c5c688dc93edf7365fd0ae99855e893 lib/codeql/rust/elements/Addressable.qll 13011bfd2e1556694c3d440cc34af8527da4df49ad92b62f2939d3699ff2cea5 ddb25935f7553a1a384b1abe2e4b4fa90ab50b952dadec32fd867afcb054f4be lib/codeql/rust/elements/ArgList.qll 661f5100f5d3ef8351452d9058b663a2a5c720eea8cf11bedd628969741486a2 28e424aac01a90fb58cd6f9f83c7e4cf379eea39e636bc0ba07efc818be71c71 @@ -6,7 +6,20 @@ lib/codeql/rust/elements/ArrayExpr.qll e4e7cff3518c50ec908271906dd46c1fbe9098faa lib/codeql/rust/elements/ArrayListExpr.qll 451aedcecb479c385ff497588c7a07fda304fd5b873270223a4f2c804e96b245 a8cb008f6f732215623b5626c84b37b651ca01ccafb2cf4c835df35d5140c6ad lib/codeql/rust/elements/ArrayRepeatExpr.qll 4b7ed5be7d2caaf69f6fc0cd05b0e2416c52d547b1a73fb23d5a13007f75f4dd f6366f21cc48376b5fdf37e8c5c2b19415d4cbdeef09f33bb99cde5cb0f5b0e7 lib/codeql/rust/elements/ArrayTypeRepr.qll 7d5148c9efaf13e6880b327ca426304f7574608a29e6b8a219ed291003cbe1ae 73a297b0307cd014d08ccb3c00fc57b6c115adadee72a0ebb4c01fcae9e47163 -lib/codeql/rust/elements/AsmExpr.qll 2f1c78e92b56d66a559543b2103d8f880dd4fa4c6907346f668b3714cf2355e9 12e174fc469c067c957f6c1a5969ab56a71a07c537ca930a564cce81c7ab4481 +lib/codeql/rust/elements/AsmClobberAbi.qll e6fcfc3d25ab113b73247f28ff89d16ae1c85797fa43f237cb2fa396ca20bdda 898469a38e3270c8d555e0b87b4fb653434f451175b729928ef437120d42bf18 +lib/codeql/rust/elements/AsmConst.qll a73654a7861100f096b92a0167311664e568a0ddcb8c97b6faabb42ad9630e46 e24f8834e2b8143d35aa107cdbffbc91955341f77574d684d8777ef9e673cd3a +lib/codeql/rust/elements/AsmDirSpec.qll 891e5b23287cca1671eddbe1e53f4d44d5692cebb7b599e1490a4e5694264be8 621f0726d5f50c8237e75323af7955785ed996f54c0422d2443fd6c33efa6346 +lib/codeql/rust/elements/AsmExpr.qll 1b0899fb7c0b6478fa102ccd0d30cac25aeca5c81d102158b15353ca498130c8 3802c40b748976c5b6dfd79315452ab34532ba46caf19fa8fbf557968e8fea74 +lib/codeql/rust/elements/AsmLabel.qll 3c8340aa3312c720d43469fab49b9305319e2ead80e5848245fdcaea3a256341 31207d65417fe639c484c814922dedad5aa418ce1e1a097a6c8d7d81290dd498 +lib/codeql/rust/elements/AsmOperand.qll 3987a289233fe09f41f20b27939655cc72fa46847969a55cca6d6393f906969a 8810ff2a64f29d1441a449f5fd74bdc1107782172c7a21baaeb48a40930b7d5a +lib/codeql/rust/elements/AsmOperandExpr.qll 5f32dc9d1123797ec9c821d89118ecae729192fb88b5cbfbff385c80c26118d8 0faa6de658ce0d9a016c3213ae6c160c5d62b98b97a665e26b33dbb8860651f8 +lib/codeql/rust/elements/AsmOperandNamed.qll 1c6978e95c7a270024684934eb531695e79e98d8ed46c4e251cf5c93fb5ba316 00f221bcd285c013e0111859205638435bf4a5d062ca7f0cf0bd98501edc7c69 +lib/codeql/rust/elements/AsmOption.qll d3b282f30d33e9d9b531288eef078eeb556cbfa091d63948bcf55bd59273c683 91a1744541af4c7f316ce9ca7607c8537de6386f0fd56381a8cb7c1744c104c3 +lib/codeql/rust/elements/AsmOptionsList.qll c60a3283233433c31a54d2a2e1a7bafe1c5c57ffdf652d9c9d37536334652416 7cdf7344a8d14052c5a132bb4532c70b8878cdfcdc0df0a608c400df5c4683c2 +lib/codeql/rust/elements/AsmPiece.qll 8650bf07246fac95533876db66178e4b30ed3210de9487b25acd2da2d145416a 42155a47d5d5e6ea2833127e78059fa81126a602e178084957c7d9ff88c1a9a3 +lib/codeql/rust/elements/AsmRegOperand.qll ebc16804e7f45fd88b99caf8b88d34faa0a860b9dedd32a01377c0cde8bea41a 03ceba863d4b9d6c19d1ef0bd27f782d9c6ccc7ffa8339bd8f27954d55cdc5f5 +lib/codeql/rust/elements/AsmRegSpec.qll fb85fe7dba34ad3694624d504423faec4b4e85fb7469192647d721a3d062c00e 1dee3b1e811984d2ed1b9770ad8588535bd4f28d83eccf013389c93593678ff1 +lib/codeql/rust/elements/AsmSym.qll 3a972dc25565bbd4fd73e0616e487c826e6d926f768f0c76f1e7c00a9db0e55b b15d78540da6f566bab12fa29c1ca4cef11380e9a5578ec70e7c893555b0f333 lib/codeql/rust/elements/AssocItem.qll 5e514287bbe353d1d637991e7af836e5659ad66922df99af68ab61399e7f8f9a 3733af54938271161ee2720c32ac43228d519b5c46b7cea1e4bbe3dc634f8857 lib/codeql/rust/elements/AssocItemList.qll ee719e7105a1936e2dd6cda0c55c73ff2704b6461861b2503ed86198484e4c06 de26c8127fd643b8b4567c0ce39511050f7ceefa0075a48a8ad03d50f56a1142 lib/codeql/rust/elements/AssocTypeArg.qll a01fb46212bed37224841e9aa3909290e720fdaffc7e443cf8a52f6bf7111ff4 9783f77b4983df46f054a18d339107fa17e5f392c360a772811ccf3bb9da32a1 @@ -67,7 +80,7 @@ lib/codeql/rust/elements/LabelableExpr.qll 598be487cd051b004ab95cbbc3029100069dc lib/codeql/rust/elements/LetElse.qll 85d16cb9cb2162493a9bacfe4b9e6a3b325d9466175b6d1a8e649bdf2191b864 c268d0878e9f82e8ede930b3825745c39ab8cd4db818eb9be6dc5ca49bee7579 lib/codeql/rust/elements/LetExpr.qll 435f233890799a9f52972a023e381bc6fe2e0b3df1e696dc98b21682a3c1d88e b34da72dd222a381e098f160551ec614ebb98eb46af35c6e1d337e173d8ec4b9 lib/codeql/rust/elements/LetStmt.qll b89881b3e57317941f74adb39f16eb665380128a6bdfaacf4dce2499cdaea2e2 2890d12a475f045a8a1213e5c7751a05e63a72978a20fd3f4862e281048b2f0e -lib/codeql/rust/elements/Lifetime.qll 048b81704723fab0ad9011f2c26a61e4a37b901c9f8372a6a74a04bdd85e273d 1d1e47c37c74ed092aa89ed4d38f49de3ee8bd9677669a33488fadda9ff733d1 +lib/codeql/rust/elements/Lifetime.qll 18c7982ae35f6afb10014fe4d2351a1531633e41552f2831187b82398770dfae c36a6c676b09305f1e28d80cda5044b5cec669843e801948ce7c191e7bd69537 lib/codeql/rust/elements/LifetimeArg.qll 58a3c02b5ae720a48533332fb1808fbcc993cd1dfdb717894ba95a4c1ce3de4d 07da9323f89b92da86efa3f44a0f96c4c9738b3a28a136c4523243be79365396 lib/codeql/rust/elements/LifetimeParam.qll db9f2c7bb32d49808993b400875e79560ac546736f106983398e32c9fdac51ca 0cb2ceaac7b0459f149fcce5ed708c9445fae7e340ec0e63744987a4fc852ef4 lib/codeql/rust/elements/LiteralExpr.qll 40b67404b7c2b81e5afabc53a2a93e0a503f687bb31a2b4bfa4e07b2d764eb8d 67ab1be2286e769fba7a50ca16748e3c141760ccaefaebae99faa71f523a43d5 @@ -92,7 +105,7 @@ lib/codeql/rust/elements/MethodCallExpr.qll 318a46ba61e3e4f0d6ce0e8fa9f79ccbbf2d lib/codeql/rust/elements/Missing.qll 70e6ac9790314752849c9888443c98223ccfc93a193998b7ce350b2c6ebe8ea4 e2f0623511acaa76b091f748d417714137a8b94f1f2bdbbd177f1c682c786dad lib/codeql/rust/elements/Module.qll 0bc85019177709256f8078d9de2a36f62f848d476225bff7bba1e35f249875c7 3fbb70e0c417a644dd0cada2c364c6e6876cfa16f37960e219c87e49c966c94e lib/codeql/rust/elements/Name.qll 3d7ed16c232912e30e5a075f5087ad344a8f76dcc27bc8f71a80c133802b89d7 036dc3ba0c20eb0907ef6dcc532214aa5de8e0de0fa819eca1fce0355b3741a3 -lib/codeql/rust/elements/NameRef.qll f11e33cdbefb3efdd8db6cd1eee593948a16ef5dd13e781c167ebd5e35b22e8c acda02258d55a6ecda0bd92eecf1778e0737a46e861a41c7dfd3203acc0eb4e9 +lib/codeql/rust/elements/NameRef.qll 9891caa7cf2f33d1f4b597f22ab3b0187ce4988aa798324946d733bd3e0dd61e 738bf0629d5f344557d926ea0230f558fdb268d59461f83f35577d1a05dd3542 lib/codeql/rust/elements/NeverTypeRepr.qll 538a8c2d4063dca2497a69b6b9e2fed418cbf32159e2bf9e044c59fff6a3b31a d6f827520c9dcfb97ac5619c420035305d4508017dc3517ba91e36d5d3298a72 lib/codeql/rust/elements/OffsetOfExpr.qll 370734a01c72364c9d6a904597190dac99dc1262631229732c8687fd1b3e2aa0 e222d2688aa18ed6eec04f2f6ac1537f5c7467d2cef878122e8fc158d4f6f99e lib/codeql/rust/elements/OrPat.qll 408b71f51edbfc79bf93b86fb058d01fa79caf2ebfeef37b50ae1da886c71b68 4a3f2b00db33fe26ee0859e35261016312cb491e23c46746cdd6d8bb1f6c88ef @@ -102,13 +115,14 @@ lib/codeql/rust/elements/ParamList.qll 33a22ba7de565db4009d3f56eecd5ef809c28d9dc lib/codeql/rust/elements/ParenExpr.qll b635f0e5d300cd9cf3651cfcefd58316c21727295bbfd44b1f5672f9e3de67b6 d81c0034d4ea7ca5829f9b00e0a634ba5b557a6296d99f0b5344b11e1ba705a1 lib/codeql/rust/elements/ParenPat.qll 40d033de6c85ad042223e0da80479adebab35494396ab652da85d3497e435c5a 8f2febe5d5cefcb076d201ae9607d403b9cfe8169d2f4b71d13868e0af43dc25 lib/codeql/rust/elements/ParenTypeRepr.qll 8f35ca4ad9077ef1636f011df6875df8840a1937db5adee2ddf6ffff4bcb0766 c9b4bcd429026908a125cc1a772a1005da7754c5257b8c63685befb6dd4d7aa8 +lib/codeql/rust/elements/ParenthesizedArgList.qll e7e0de9f9a2065ae95d0c91aff4a0146396fb0f0e3e30d0b56c0bbf5e1c4289e 747db2cef3fdb72bbb172bce00f1cd8be95a428d7b0a6e79953243e69e51db18 lib/codeql/rust/elements/Pat.qll 56211c5cb4709e7c12a2bfd2da5e413a451672d99e23a8386c08ad0b999fd45c b1b1893a13a75c4f0390f7e2a14ee98a46f067cfdc991a8d43adc82497d20aff lib/codeql/rust/elements/Path.qll 16264a9c978a3027f623530e386a9ad16541305b252fed5e1bedcfbe1d6475d5 8c21063c7f344ce686342e7c12542fec05004e364681f7a31b65f5ee9263a46d lib/codeql/rust/elements/PathAstNode.qll c5c8627caaf863089d4d6004e206b2e62bc466db2ed5da9f3f443bf3dc29faf9 01107b1ce17cbee08a764962fb13d3f02edbd10675fa5bd89e089f03075ba443 lib/codeql/rust/elements/PathExpr.qll 0232228845a2005fc63d6b8aea8b49ff50415e0e90fd18f863ee1d6e44f53c07 47b15cc6ae576d13f14b29ffa4620451accc603ff87071dfe48660dbe018bf36 lib/codeql/rust/elements/PathExprBase.qll bb41092ec690ae926e3233c215dcaf1fd8e161b8a6955151949f492e02dba13a b2257072f8062d31c29c63ee1311b07e0d2eb37075f582cfc76bb542ef773198 lib/codeql/rust/elements/PathPat.qll a7069d1dd77ba66814d6c84e135ed2975d7fcf379624079e6a76dc44b5de832e 2294d524b65ab0d038094b2a00f73feb8ab70c8f49fb4d91e9d390073205631d -lib/codeql/rust/elements/PathSegment.qll df95d0b621623f2383634031a49c76949f25550b82cca0f73fb89f39487a9a2b 37addce4537f7864e24f6da0d4c6545a105df598a3f1428c33404aa6dff445c4 +lib/codeql/rust/elements/PathSegment.qll 960c0936dfb6c09cb8c0564404c0844d03fa582cb70a8de58bb1cafffba2c842 de0f47c37195ffebbab014cb4a48d1327bfbdff8be38bb0646e84578969ef352 lib/codeql/rust/elements/PathTypeRepr.qll 29028e35e93e8d1a3ec2eac7d65347e60364c20f9f6474bc74808bfc0efdd2f8 99058b68f79b01e9889f10ddb2f6e1fb40ad85475e459c7e9629d30f7c014bca lib/codeql/rust/elements/PrefixExpr.qll 107e7bd111b637fd6d76026062d54c2780760b965f172ef119c50dd0714a377d 46954a9404e561c51682395729daac3bda5442113f29839d043e9605d63f7f6d lib/codeql/rust/elements/PtrTypeRepr.qll 2eb2b6f6e5858a10fa1b10d85400ed6db781339bf152162a2fd33213c1ce083b bb99c2da04c80d3c14f47cda1feb9719af801d209becb3d9b20746a2a3b8fc02 @@ -152,7 +166,7 @@ lib/codeql/rust/elements/TupleStructPat.qll da398a23eb616bf7dd586b2a87f4ab00f286 lib/codeql/rust/elements/TupleTypeRepr.qll 819b600abfb2d6110e3f9c09a3901c875530acf372c65e3d9071aed8ab302cbb 508e8e527248b42ba3f20d3ff5163c348c9d338b12ff7d244246fc711e9d240c lib/codeql/rust/elements/TypeAlias.qll 2974953465e096fee61c70199a5672174254494786bc762c32c84df97422f08b 55e634e3dfa6ea3980ab37a524ea60c6adc207114a313c0c2a3632f7b5583dab lib/codeql/rust/elements/TypeArg.qll 88b5d150dbb207079bf40019b60eb6f5389247aa3040474729019d2be48e92a6 6a507290152be04b1d2c4e2c04214cfc87c583ed0611bd75655aff59eb8ce952 -lib/codeql/rust/elements/TypeBound.qll 0c1629a7e2bce7e6f603e1209cd5b182b9bb61fa4c287bc4276d40cf004011e5 40c6f1d099f35be61ce721d3ee921c14722190b50874f87035036ef14ed2fb68 +lib/codeql/rust/elements/TypeBound.qll d4a699afb08c2b8fd3d0b08cd8c48971439ff5511758881ce50f0f4a9839d84a 3c439f1a92d29ae66e643d1e75500a951d30e70cc54a5729bf0c2e13a97330a4 lib/codeql/rust/elements/TypeBoundList.qll a0b95aa95485a0e23b9198ca492ea3fa075fb0dc9fb40ba997aff35d70c51d3b 51de36a56cd2921758260c62cebeb96e703d10b226ca505c874ae54c5a981348 lib/codeql/rust/elements/TypeParam.qll 1ed46cf5b687e75fd062142114197354422dc7378f637a93bcd26038d7a51cfa 89ec428bda92d44c265263886ad427032dbced6169b405af0cd51f0a981fb587 lib/codeql/rust/elements/TypeRepr.qll ea41b05ef0aaac71da460f9a6a8331cf98166f2c388526068ddacbd67488c892 11a01e42dab9183bac14de1ca49131788ede99e75b0ef759efcbc7cf08524184 @@ -161,6 +175,8 @@ lib/codeql/rust/elements/Unextracted.qll 12e60c79ef5b94d72b579b19970622e7b73822e lib/codeql/rust/elements/Unimplemented.qll bf624d28163e5c99accda16c0c99f938bec4a3b1b920a463e86fc8529ff5ff02 013bc7777298d250338f835cd494b5a8accea2d6a4f9561851f283ac129a446b lib/codeql/rust/elements/Union.qll 92ffb1abc03889b9b71dae9491d4595e443c80b472474644f4e2d80215d4420a 8ad87a33f56583c3ebd19083d8e177da91dcc4dacd5e9140a48f01750c6b1cdb lib/codeql/rust/elements/Use.qll e27d30ece0456a73732dfd867dfc5abdf48a50de56e7dafcab444b688610af72 7efe59c04dd2f10b4a25b8a17beb51362be0a93d73e5a9e1251cf133cf1227c3 +lib/codeql/rust/elements/UseBoundGenericArg.qll f16903f8fff676d3700eaad5490804624391141472ecc3166ccb1f70c794c120 5efda98088d096b42f53ceccae78c05f15c6953525b514d849681cb2cf65b147 +lib/codeql/rust/elements/UseBoundGenericArgs.qll 6d3b8bf8e59ef6d10d2f58c6d2eca61b113a524174f62d1f56b724c4179fda04 8fad6ed9e5bf159a2db01e7eb960cc55b940f7b92c4bb5c967120068e4fec80a lib/codeql/rust/elements/UseTree.qll 16b6e42146dc4c2e9d8cc6bc143933d675d1a4c9a56b309f390f4bf5df99b25d 9f8dd7d621dd15f6f1ccec676b08da02773673cbb3a3570781c16167c6e08ef4 lib/codeql/rust/elements/UseTreeList.qll 768c4ec25e8807bba65619f566b22fa5c0946c36e96c88cfdee04c2875b44554 6433c8d9acd4e346cadd5fef01d79dd35bb6245115bdceb5322c0511106030b0 lib/codeql/rust/elements/Variant.qll 328323ef59faf01dcf71e7d728fd10a60465a1bd24e1d3578289cdf6554e5b63 ba49c635790395d9df4398c3c0fec700c3c7761fcc6581623a45d381d23ac34d @@ -182,8 +198,32 @@ lib/codeql/rust/elements/internal/ArrayExprInternalConstructor.qll f9756bc40beee lib/codeql/rust/elements/internal/ArrayExprInternalImpl.qll ae4488846c8309b2d4a51d54b36fce0a75107917c0b1f8af5ccf40797f570580 37838c7d6a04b95a16ed46e963d7e56def7a30b5e5ef1ab7e0dfdb5f256fa874 lib/codeql/rust/elements/internal/ArrayTypeReprConstructor.qll 52fea288f2031ae4fd5e5fe62300311134ed1dec29e372500487bf2c294516c1 fa6484f548aa0b85867813166f4b6699517dda9906e42d361f5e8c6486bdcb81 lib/codeql/rust/elements/internal/ArrayTypeReprImpl.qll ee16057197a489e6539c256d59f615636610022ec920fef93d36abf051c8687d 39a86b29d94f6d3b422161f0b1db6d0462c149bd465d60bfc82d383dd891c63b +lib/codeql/rust/elements/internal/AsmClobberAbiConstructor.qll 8bc39bd50f46b7c51b0cf2700d434d19d779ed6660e67e6dcec086e5a137ae3e 4e7425194565bea7a0fdc06e98338ebaeef4810d1e87245cdc55274534f1a592 +lib/codeql/rust/elements/internal/AsmClobberAbiImpl.qll 3d2c961b165b37ce90555b2afb97b1dd27c703ca555aad546e6a22396a5e53d5 5edfb4db47239867e09c2c277e1a6a4bd0339bd63f2f16fe7bce329739a0eff0 +lib/codeql/rust/elements/internal/AsmConstConstructor.qll 810cb616b04b3e70beb0e21f9ead43238d666ab21982ad513fc30c3357c85758 ad864bec16d3295b86c8aef3dc7170b58ef307a8d4d8b1bc1e91373021d6ae10 +lib/codeql/rust/elements/internal/AsmConstImpl.qll 11821ae299cd02b2b471954191beb44161de9ec41a3ca9b8b76b3af22734bbe0 e60fdce43035f8018ce1c00f50d67a87b3730ff5af2565ec07fa5091bdce3495 +lib/codeql/rust/elements/internal/AsmDirSpecConstructor.qll 91514d37fc4f274015606cc61e3137be71b06a8f5c09e3211affb1a7bd6d95b2 866ba3f8077e59b94ae07d38a9152081fc11122e18aa89cdd0c0acd9c846ed87 +lib/codeql/rust/elements/internal/AsmDirSpecImpl.qll 28bbfbe55ece93a5938edc56bf19aaa75236aa127155cfb63fa5df78c2b69ba5 43c934a8fbfdbfb0709d1c46961d15b61b63171ab0fcbae4b19e3c2a7d98bf36 lib/codeql/rust/elements/internal/AsmExprConstructor.qll 36c68023b58beec30af9f05d9d902a4c49faa0206b5528d6aad494a91da07941 4d91b7d30def03e634b92c0d7b99b47c3aadd75f4499f425b80355bc775ea5b6 lib/codeql/rust/elements/internal/AsmExprImpl.qll c34419c96378e2ae2ebb17d16f9efb4c97d3558919c252be9203aee223ac30a2 1d99c8fa35fabf931e564383c06c95fb39201fd588b759d28aef2fda7ed2c247 +lib/codeql/rust/elements/internal/AsmLabelConstructor.qll e5f04525befc30136b656b020ade440c8b987ec787ff9c3feec77c1660f2556d cb9394581e39656bbe50cf8cc882c1b4b5534d7d0d59cef5c716d1c716a8a4f6 +lib/codeql/rust/elements/internal/AsmLabelImpl.qll 2c29a6430ebe60b7143692afe32a7c5779e639238ab50d517e946838febd7e24 5281bfa6762236dfeada89c08f5f9263c826cba31bd1a0c56b1893885b56cd81 +lib/codeql/rust/elements/internal/AsmOperandExprConstructor.qll a7a724033717fe6c7aefb344bc21278baa690408135958d51fe01106e3df6f69 72212bf8792f5b8483a3567aab86fad70a45d9d33e85d81c275f96b2b10c87d1 +lib/codeql/rust/elements/internal/AsmOperandExprImpl.qll 62a59f3b5ac6fff4dfeea5cc4f5bb1c2cdd59198e15d5564ed9c99ed7b3020ed 94b9b9179ed08b3c24ec68c4d541f0bf8cc3743d5f329881cdc6fdffbb2df96b +lib/codeql/rust/elements/internal/AsmOperandImpl.qll acd1eb6467d7b1904e2f35b5abe9aa4431b9382c68da68ea9a90938c8277e2f0 ab21f5a8d57da0698b8fbfee6d569c95671ea48d433e64337e69452523cec9c3 +lib/codeql/rust/elements/internal/AsmOperandNamedConstructor.qll 321fdd145a3449c7a93e6b16bb2d6e35a7d8c8aa63a325aa121d62309509ae58 08386b0e35c5e24918732f450a65f3b217601dc07123396df618ac46b9e94d7d +lib/codeql/rust/elements/internal/AsmOperandNamedImpl.qll a6179fa76eb9012c9a752e2fdc393c80a223afa1072206d4e9923360dd67f928 6d1b045378fa0f863fac9c4ad6589d30b6febd974dcabd026ef9ee33d3c6439e +lib/codeql/rust/elements/internal/AsmOptionConstructor.qll 4dc373d005a09bf4baba7205a5fe536dae9fcd39c5a761796a04bf026862e0c2 3e4d8f38344c1a246bce6e4f1df1fc47e928b7a528b6a82683259f7bc190ed13 +lib/codeql/rust/elements/internal/AsmOptionImpl.qll 6068a6f339e9a356b8bc5c190712254c036c5fd1a91dac2a959375a22a3afa97 e5a08a934e2d55ffaa76f87841a8fb7fce6dc7c9e3e8a73cb2f875c4d2fc866e +lib/codeql/rust/elements/internal/AsmOptionsListConstructor.qll 45e78f45fb65c1ae98f16e5c4d8129b91cf079b6793c5241981fab881b6a28a7 1fc496b87693e779e5185741461d5de7061699d7d94d15c8a6edec4fb0c5ccc7 +lib/codeql/rust/elements/internal/AsmOptionsListImpl.qll 74a5891814aa1b4b12f04e319bf0cdb3205a98c19389b3340103fd222cf837e8 f42dfcd59230ec379578b10c38ee3e90f689db607a9dd2e9aca419721352588d +lib/codeql/rust/elements/internal/AsmPieceImpl.qll 1e501905bbf11c5a3cc4327af6b4a48ce157258d29c5936269e406d9e0fe21d4 54b91047f72c03ebbd84cf1826b7bfc556620a161edf3085d0a4faef8e60f63e +lib/codeql/rust/elements/internal/AsmRegOperandConstructor.qll 5299b8134fdf2034c4d82a13a1f5ba7d90ffeae18ecd1d59aa43fd3dbf7ab92b d135f5e4a2d9da6917fb3b8277be9fcd68bcb1e3a76e4b2e70eb0b969b391402 +lib/codeql/rust/elements/internal/AsmRegOperandImpl.qll c9a2127a645a89f08f63f9af6ba9ac8d60315508d07d5fe2f0aaf082f4d34f36 e9a5035cbf54b61ede4632fa3f9c452e5de646cda03657cda3434362fbc91f4d +lib/codeql/rust/elements/internal/AsmRegSpecConstructor.qll bf3e0783645622691183e2f0df50144710a3198159c030e350b87f7c1bb0c86f 66f7c92260038785f9010c0914e69589bb5ff64fb14c2fb2c786851ca3c52866 +lib/codeql/rust/elements/internal/AsmRegSpecImpl.qll 37c2b571c1176b0159fe9ead51df0338ff1e19f4db1156d03cad1c55d4a264f4 a6d80ce59b0460f0612e5a3798bb54f3602855a8797ec91180c113843dd0060b +lib/codeql/rust/elements/internal/AsmSymConstructor.qll 9c7e8471081b9173f01592d4b9d22584a0d1cee6b4851050d642ddaa4017659e adc5b4b2a8cd7164da4867d83aa08c6e54c45614c1f4fc9aa1cbbedd3c20a1b3 +lib/codeql/rust/elements/internal/AsmSymImpl.qll c6a01ce291c3976852a3efc84bd35bfae919fa2ac2c492d7341133d99db3ba36 34fd132a17e50797a46bb3e68bef524a7864eb20532c923b53240b754c154762 lib/codeql/rust/elements/internal/AssocItemImpl.qll f462dacb8e60db8d8ffae44307c990370210c57b66721fd072c34b5ae76d3cc9 7fdb8faff0f310c1cb2bdd52f18368c8d78873467800c41ab3d1989f3196d845 lib/codeql/rust/elements/internal/AssocItemListConstructor.qll 1977164a68d52707ddee2f16e4d5a3de07280864510648750016010baec61637 bb750f1a016b42a32583b423655279e967be5def66f6b68c5018ec1e022e25e1 lib/codeql/rust/elements/internal/AssocItemListImpl.qll 92369e446494617359283109c9d91d307e0efd8edb50e0d2f41b83213cf494c0 58e60fa0a55d6fa9fb6cee22544880842d88c6380efc28fb40f3c37b6851d509 @@ -307,6 +347,8 @@ lib/codeql/rust/elements/internal/ParamListConstructor.qll 3123142ab3cab46fb53d7 lib/codeql/rust/elements/internal/ParenExprConstructor.qll 104b67dc3fd53ab52e2a42ffde37f3a3a50647aa7bf35df9ba9528e9670da210 d1f5937756e87a477710c61698d141cdad0ccce8b07ecb51bab00330a1ca9835 lib/codeql/rust/elements/internal/ParenPatConstructor.qll 9aea3c3b677755177d85c63e20234c234f530a16db20ab699de05ca3f1b59787 29f24aed0d880629a53b30550467ade09a0a778dbf88891769c1e11b0b239f98 lib/codeql/rust/elements/internal/ParenTypeReprConstructor.qll b3825399f90c8546c254df1f3285fe6053b8137e4705978de50017be941c9f42 696fa20ce5bd4731566b88c8ea13df836627354d37cc9d39514d89d8fb730200 +lib/codeql/rust/elements/internal/ParenthesizedArgListConstructor.qll 67f49d376e87a58d7b22eb6e8f90c5b3d295a732be657b27ea6b86835a0ac327 6549e4f5bccb2d29dfeb207625f4d940344ac1bb4c7a7ae007a8eb1c4c985da0 +lib/codeql/rust/elements/internal/ParenthesizedArgListImpl.qll 16ded8aee2e245110c97456a3151045bae48db3990ac2ed0940422f26b1596fe 207720c3403ed8fe9725e860e0ed3aa3b7fb257cbc2478414731080001c6aaef lib/codeql/rust/elements/internal/PatImpl.qll 37c9b1da7aa625117644e2cd74ec0b174f69a38cf66926add01786a05d5ad2ad 143685a0b4873fa0b73b204285dca956e59b32d527bfac6cc336326d244994b7 lib/codeql/rust/elements/internal/PathAstNodeImpl.qll 5a38c42a9127fc2071a9e8f0914996d8c3763e2708805de922e42771de50f649 ebe319cce565497071118cd4c291668bbcdf5fc8942c07efc5a10181b4ce5880 lib/codeql/rust/elements/internal/PathConstructor.qll 5c6354c28faf9f28f3efee8e19bdb82773adcf4b0c1a38788b06af25bcb6bc4a 3e2aeef7b6b9cda7f7f45a6c8119c98803aa644cf6a492cf0fce318eba40fe8f @@ -395,6 +437,9 @@ lib/codeql/rust/elements/internal/UnextractedImpl.qll 5c23df7e448184d76ccab2c227 lib/codeql/rust/elements/internal/UnimplementedConstructor.qll 70b0489fdc75fed389de8203947ed9c8eabb91373a1264eb2c8018ddbb2d9baa 0f2592c1697a2f2f913014ecd73b0e3ff1ec5b038ba1c3a22e7939bf8759e664 lib/codeql/rust/elements/internal/UnimplementedImpl.qll 06771abc088e0a8fc24032c9d2633618e8e40343ef8757a68cc0a70f1617165a 5738f626f1f4f573fdf7dcd5bd57a0948d290ed89342b9160e95ef3c84044f9a lib/codeql/rust/elements/internal/UnionConstructor.qll d650551a1b3ef29c5a770bdad626269cf539ed0c675af954bc847d2c6111f3f6 aca9064ad653a126ab4f03703e96b274587c852dc5e7ff3fea0fec4d45993f10 +lib/codeql/rust/elements/internal/UseBoundGenericArgImpl.qll 2f90bfd5e43113da1155445bef0334ab84acddef102bd62dfa2ef908717a5d09 dd2fa3c6081d79e1d96360dbdb339128cd944e7b7dc26c449c04f970ee1d7848 +lib/codeql/rust/elements/internal/UseBoundGenericArgsConstructor.qll 84d4a959d098fcd1713cb169e15b4945d846121701d2c5709b11e19202c21f2b 93113c92be9bc9f0b8530c308fe482dfeddc7dc827fc44049cecb3eab28df731 +lib/codeql/rust/elements/internal/UseBoundGenericArgsImpl.qll 43caeeb43b4b9480bd586f58124ef3b14980ba61c47326799ca7cb98dd3b7394 71936dd5dd0428ab24c697232770bc7309c22e5de6a17db23443b78f245078a4 lib/codeql/rust/elements/internal/UseConstructor.qll a4f790795e18abc29a50d6fbaa0db64cba781e3259a42cbf0468c24ac66b63e7 2fa288f073ac094a838c11f091def2c790b347b6a1b79407c11b10c73d6bff57 lib/codeql/rust/elements/internal/UseImpl.qll ba779517c3c928ab6e794360b6344829e84ec6da5e1de1b03b4eaf8bdae58ce9 0f4ead9eecb584eb9827502276ffe8cb1da0d2fa4b8f660d2afc26ac4e0fba86 lib/codeql/rust/elements/internal/UseTreeConstructor.qll 3e6e834100fcc7249f8a20f8bd9debe09b705fcf5a0e655537e71ac1c6f7956b cdbc84b8f1b009be1e4a7aaba7f5237823cea62c86b38f1794aad97e3dfcf64b @@ -424,7 +469,20 @@ lib/codeql/rust/elements/internal/generated/ArrayExprInternal.qll 67a7b0fae04b11 lib/codeql/rust/elements/internal/generated/ArrayListExpr.qll f325163c2bd401286305330482bee20d060cecd24afa9e49deab7ba7e72ca056 ae3f5b303e31fc6c48b38172304ee8dcf3af2b2ba693767824ea8a944b6be0eb lib/codeql/rust/elements/internal/generated/ArrayRepeatExpr.qll ac2035488d5b9328f01ce2dd5bd7598e3af1cbb383ddb48b648e1e8908ea82fc 3ec910b184115fb3750692287e8039560e20bd6a5fb26ac1f9c346424d8eaa48 lib/codeql/rust/elements/internal/generated/ArrayTypeRepr.qll 0945bea9b40ebf871b9d5ac974e256cda985f05113cac63cf8af48da5e4eaace 4d8b67d3ce117f509f984d03ae0c44533d3880d4687c7614fed1e9eac9ce2e6f -lib/codeql/rust/elements/internal/generated/AsmExpr.qll b5fef59589c02c17857a4a7f5c7b5efb747a1e98710167efa5c2e88cffd7bcbb b43b297a3b4894e8dd92ef3a23b76f2684c303d41e6030398e69b7754ebea9cd +lib/codeql/rust/elements/internal/generated/AsmClobberAbi.qll c53e2395c45bffa5c065748882dc1588ee361962cb5ebe8634da4089d4c86498 23d6be368e23bf2d4147bd5ce06a86131365a6ae591b57b9d046536d6e8f584d +lib/codeql/rust/elements/internal/generated/AsmConst.qll 6c533f642f57b15b3c9691588a994d65dccc9e226e1089d8ed9ac2c14fe65152 e85eb7c39e213097610cbba401922949189530485e5c62d1032b9f3283d9852d +lib/codeql/rust/elements/internal/generated/AsmDirSpec.qll 8c35b1f15ba93552ed0b230b58073c788d4bcfd39c467b2be9cd641537eca54c c6e93f9dedbd064c9ec82477d941b18295c48d7a3d12d1d5378ce76a49da0ea8 +lib/codeql/rust/elements/internal/generated/AsmExpr.qll 4b92fb1e98f4b13480a539dbe75229161835d16969541b675b14d9b92f8cd61f c0490051e30cc345b1484d44f9b2a450efbd208b5d67377b14f8a5aa875450c4 +lib/codeql/rust/elements/internal/generated/AsmLabel.qll 5cf6e588a7e7a7451fa8b06f1a139b84fb59cb72f5b6d4cf4e1a43d360b4e677 7bf4ebf81f082e7830459e1a91bf9130dee47352701b17da685be528699bb354 +lib/codeql/rust/elements/internal/generated/AsmOperand.qll a18ddb65ba0de6b61fb73e6a39398a127ccd4180b12fea43398e1e8f3e829ecd 22d2162566bcf18e8bb39eac9c1de0ae563013767ef5efebff6d844cb4038cae +lib/codeql/rust/elements/internal/generated/AsmOperandExpr.qll d9c5ce691bc59ee06131a7aaffb43f7713e7a6e4dfbf2884f6ce77605e1d89b3 2a6fddedc52c35b518d81a2fea7fc47dac0df767d4d74636c215bbb3098591ed +lib/codeql/rust/elements/internal/generated/AsmOperandNamed.qll 9ffd9e8cf70384a8a63dc31d7fd2d7e23cb578bb8e03b298d39e49d0261f09a5 30842d0c8d3afd87be9ea48b6ee3d62aeb7c350b5de58996c69698280b550ba0 +lib/codeql/rust/elements/internal/generated/AsmOption.qll d2de2db0f17d55e253f9cad3f8fb7a8fa5c566286eb51b633dbf2b7a2666aa7b 88248e7ad09388e11abf6589061d41d60511501f81eb95c7076c43a4f6823298 +lib/codeql/rust/elements/internal/generated/AsmOptionsList.qll 43f6f378ac9f88b457096093bedae7d65c3f5c6fa1d5cf83245296ae076a52f0 a632a6a5c7534067e5380b06d5975dbbb4f2ee8155af5c9d79be9f520ff4dbfb +lib/codeql/rust/elements/internal/generated/AsmPiece.qll 17f425727781cdda3a2ec59e20a70e7eb14c75298298e7a014316593fb18f1f9 67656da151f466288d5e7f6cd7723ccb4660df81a9414398c00f7a7c97a19163 +lib/codeql/rust/elements/internal/generated/AsmRegOperand.qll 09a8bafe06287f7d6a186a4d3e9db9a7b1038b800ae117ed4ec40d8618d20837 7cb8bf72a6cbc537ef94ef07133e7803a8ef5d391159a5bbbf6b0e36a3378269 +lib/codeql/rust/elements/internal/generated/AsmRegSpec.qll 082a4bdb831c3530bd20440551d9216970a01b3e623d7d07e042dc660fc4697a aa2415338805b7394d4a064c0a51e6147bd007aadf1798030e8456e16d6fead3 +lib/codeql/rust/elements/internal/generated/AsmSym.qll 9a535efdb6ed0a46a6a0054b91afb1880c9fed8dd841f934a285870aa9a882dd 861c4038d1e86364884cc1ea6d08e0aaf7f278dc15707f69ac0606d94866fdea lib/codeql/rust/elements/internal/generated/AssocItem.qll aa7c06e001b67e4a59476fa7299e09f8da16c93f91aff0ec9812c64386e7c023 0032b45e34e6aba9c4b3d319b108efa0de8ad679b5f254a1ec7c606877ff5e95 lib/codeql/rust/elements/internal/generated/AssocItemList.qll c53d95395352bb3568198fd18da62e23511c64f19b5aaae4122bd696d402ebf5 3c244f2f0f053903576cdf2b1a15874dee0371caf9fecb5353aceab3c403f532 lib/codeql/rust/elements/internal/generated/AssocTypeArg.qll 9a1fef9d51764a5647e540eb5c07b00c5e4738cd12efc887f05ac74962a15a25 ac564fbd6be444faa3b675c3ec3f979b6c72ebadcdd98a92febf3d83231d8982 @@ -486,7 +544,7 @@ lib/codeql/rust/elements/internal/generated/LabelableExpr.qll 896fd165b438b60d71 lib/codeql/rust/elements/internal/generated/LetElse.qll 7ca556118b5446bfc85abba8f0edd4970e029b30d414ea824a1b5f568310a76c a403540881336f9d0269cbcdb4b87107a17ab234a985247dc52a380f150a1641 lib/codeql/rust/elements/internal/generated/LetExpr.qll 5983b8e1a528c9ad57932a54eb832d5bcf6307b15e1d423ffa2402e8a5d8afa4 8a6affdc42de32aa1bfc93002352227fc251540304765e53967bab6e4383f4ae lib/codeql/rust/elements/internal/generated/LetStmt.qll 21e0fadccc1e7523ef1c638fc3e2af47256791eff70d1be01a9c377659ee36ef 21ccb4821bdbde409f17ae96790e395546d6c20d2411fccf88bad6ef623a473e -lib/codeql/rust/elements/internal/generated/Lifetime.qll 90d01c76188ce0c053122c62b41e47f27c4c7717ca5a4999a76797360043da0d 7b9feb202da5a06cd17f7770bb66742fd9e7cff0d410fefc7ffaafe710ac16d6 +lib/codeql/rust/elements/internal/generated/Lifetime.qll e3ca3ba2dafa6efe1c69f3189af6c3123e043cc3b7b28ba421771b869a286bd1 e5e3cfda89b06b533accee992289c8c2c0b0ce180ce8b103190152cf6ca1342a lib/codeql/rust/elements/internal/generated/LifetimeArg.qll 7c1a44e3d480e75142b171eb51382c9492d393043833c0ab4a4036eba19043b8 7d8273b62794268dab6938ba1e3a3560a80a2c49cd9a9717345785dacd311059 lib/codeql/rust/elements/internal/generated/LifetimeParam.qll bcbde38bfb99034e470634dbd32c0df34c40e1e531e2d235b7ef29c0b66f8a56 1fd15bbaa1dbc521b2ee4bf0bc1009c411aff15eac07c0842ed9883d9a291669 lib/codeql/rust/elements/internal/generated/LiteralExpr.qll f3a564d0a3ed0d915f5ab48e12246777e4972ad987cd9deaafeb94cf407b2877 2337c3d5f60361bd10f6aeca301e88255f5dffb85301cf36cbbfa1a65bfad1cd @@ -511,7 +569,7 @@ lib/codeql/rust/elements/internal/generated/MethodCallExpr.qll 17bffcc826851a8be lib/codeql/rust/elements/internal/generated/Missing.qll 16735d91df04a4e1ae52fae25db5f59a044e540755734bbab46b5fbb0fe6b0bd 28ca4e49fb7e6b4734be2f2f69e7c224c570344cc160ef80c5a5cd413e750dad lib/codeql/rust/elements/internal/generated/Module.qll ebae5d8963c9fd569c0fbad1d7770abd3fd2479437f236cbce0505ba9f9af52c fa3c382115fed18a26f1a755d8749a201b9489f82c09448a88fb8e9e1435fe5f lib/codeql/rust/elements/internal/generated/Name.qll 12aad57744b7d1b04454159536409244c47319aedd580acb58ee93ef9d7f837d 63fc67ccc085db22f82576a53489f15216a7c29d5b941b14a965eab481534e2e -lib/codeql/rust/elements/internal/generated/NameRef.qll 4292fc7aa9ba22a7fa5bd638c38f696cc6724d8ed5e7346e7c5a52c4e4b65eec dfa8c3d4b521e43b76b18666d3d32d159c21b7b194285bac425df681544d269f +lib/codeql/rust/elements/internal/generated/NameRef.qll beaeffed918b821bd797b0752453f6f35adcaa046b01e39f95a35dca93a5c257 5aee4e4e700f97af2035406c641f375bf0dcac6f3002ae9d4ffabe0da2ddd176 lib/codeql/rust/elements/internal/generated/NeverTypeRepr.qll c601b228a6359f809425ad43b46c1c444c9826652b07f8facc6f9729df268285 23b53bb1d826a8b54b68bd4f138ebaabeeb2f56392c882b32417eff388aa80cc lib/codeql/rust/elements/internal/generated/OffsetOfExpr.qll c86eecd11345a807571542e220ced8ccc8bb78f81de61fff6fc6b23ff379cd12 76a692d3ad5e26751e574c7d9b13cf698d471e1783f53a312e808c0b21a110ab lib/codeql/rust/elements/internal/generated/OrPat.qll 0dc6bd6ada8d11b7f708f71c8208fc2c28629e9c265c3df3c2dc9bea30de5afa 892119fc1de2e3315489203c56ee3ed3df8b9806e927ee58aa6083e5b2156dab @@ -521,21 +579,22 @@ lib/codeql/rust/elements/internal/generated/ParamList.qll c808c9d84dd7800573832b lib/codeql/rust/elements/internal/generated/ParenExpr.qll bc0731505bfe88516205ec360582a4222d2681d11342c93e15258590ddee82f2 d4bd6e0c80cf1d63746c88d4bcb3a01d4c75732e5da09e3ebd9437ced227fb60 lib/codeql/rust/elements/internal/generated/ParenPat.qll 4f168ef5d5bb87a903251cc31b2e44a759b099ec69c90af31783fbb15778c940 0e34f94a45a13396fd57d94c245dc64d1adde2ab0e22b56946f7e94c04e297fc lib/codeql/rust/elements/internal/generated/ParenTypeRepr.qll 40ab5c592e7699c621787793743e33988de71ff42ca27599f5ab3ddb70e3f7d8 12c0a6eed2202ee3e892f61da3b3ce77ac3190854cdf3097e8d2be98aa3cb91d -lib/codeql/rust/elements/internal/generated/ParentChild.qll 9064e1cbc32dd6f830ea9d96f7408ee864c79404cadda1f278c3782eeca7bd7f 3448847608c25b100328bd68f70730a7e43b7d8b5ef8ab1ce40ae3f5a57c6bd2 +lib/codeql/rust/elements/internal/generated/ParentChild.qll 668b9079bcb7a055b956cfff94930ba59a7d88d59a95284dd93bd146c4c73d22 60ffda092345f862082b0b61a052b7fad12b4b6431d23794ff2ba3cfd334bd93 +lib/codeql/rust/elements/internal/generated/ParenthesizedArgList.qll c5fa328ea60d3a3333d7c7bb3480969c1873166c7ac8ebb9d0afad7a8099d1a8 2dbbb6200d96f7db7dea4a55bdeab8d67b14d39a43e0bd54ada019f7e466f163 lib/codeql/rust/elements/internal/generated/Pat.qll 3605ac062be2f294ee73336e9669027b8b655f4ad55660e1eab35266275154ee 7f9400db2884d336dd1d21df2a8093759c2a110be9bf6482ce8e80ae0fd74ed4 lib/codeql/rust/elements/internal/generated/Path.qll bf6a86e7fcb7164624cc070dcce86d2bda50a2516b95115b87d0ebb5596e50a1 fd7a9ad4034cdebe8dfe495619c46f464630d38195313072e0bd904061b0fb00 lib/codeql/rust/elements/internal/generated/PathAstNode.qll e6d4d5bffd3c623baaaee46bc183eb31ce88795535f164f6a9b9b4d98bbd6101 168db515404933479ba6b150c72e012d28592cbc32366aefcb1bf9599dbcd183 lib/codeql/rust/elements/internal/generated/PathExpr.qll 34ebad4d062ce8b7e517f2ab09d52745fb8455203f4a936df7284ad296638387 ba66781cdbdeb89c27a4bfb2be0f27f85fb34978d699b4e343446fb0d7ad2aa6 lib/codeql/rust/elements/internal/generated/PathExprBase.qll d8218e201b8557fa6d9ca2c30b764e5ad9a04a2e4fb695cc7219bbd7636a6ac2 4ef178426d7095a156f4f8c459b4d16f63abc64336cb50a6cf883a5f7ee09113 lib/codeql/rust/elements/internal/generated/PathPat.qll 003d10a4d18681da67c7b20fcb16b15047cf9cc4b1723e7674ef74e40589cc5a 955e66f6d317ca5562ad1b5b13e1cd230c29e2538b8e86f072795b0fdd8a1c66 -lib/codeql/rust/elements/internal/generated/PathSegment.qll f6892724c0b516f7e04eee3878c8060c5a4c54fe2a3a3836470c86df5fddb28c bdb6b89cf037e09b395729b25117dabc86ebc8b967e39856b5e2a1f3810bb86c +lib/codeql/rust/elements/internal/generated/PathSegment.qll 274159f68ad9cd8a441efc8f2e3726858c458b51b3954742d5e09b4c6751ae86 ad274517dae84035995bea41b1b81d6d54cabe7aefae414433ecc2b54b6c808c lib/codeql/rust/elements/internal/generated/PathTypeRepr.qll b847fabe7059485c5194cbc144f38dae2433057771ff10fe0b6ae9876b33afd4 ee2fdcd86d78c389a2276ebe7e889f042b7bb39c3c611f56b951591600a60e8a lib/codeql/rust/elements/internal/generated/PrefixExpr.qll c9ede5f2deb7b41bc8240969e8554f645057018fe96e7e9ad9c2924c8b14722b 5ae2e3c3dc8fa73e7026ef6534185afa6b0b5051804435d8b741dd3640c864e1 lib/codeql/rust/elements/internal/generated/PtrTypeRepr.qll 51d1e9e683fc79dddbffadee9015b5351bf03ce48f879da98b1f6931a61166f8 122a9c4887aa24e3f3a587b2f37c4db32633f56df3c8b696db4b8a609d9d4a98 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 71ebb4246cd4b34ef28e216ea3a2d494b3514ec011aa4106105f83accf781d98 4a58d85b93e6547565acea761221d7c69ef34fdb69ec8d7912d6e50569f5f48e +lib/codeql/rust/elements/internal/generated/Raw.qll aac2ca733fa3ee544307443f4ab78ec8dc6d635d8047ec706ed46d2101321d35 aec95fb3b33a96aed2ee7a46d0d8cacef13389f0f107ce2736b4d39502d512d5 lib/codeql/rust/elements/internal/generated/RecordExpr.qll 2131b2cb336caa76170082e69776011bf02576bbfdd34ba68ca84af24209250a 39a2e3ec32352b594c43cc1295e0e8b3f9808173322d3d73cb7d48ef969d5565 lib/codeql/rust/elements/internal/generated/RecordExprField.qll 7e9f8663d3b74ebbc9603b10c9912f082febba6bd73d344b100bbd3edf837802 fbe6b578e7fd5d5a6f21bbb8c388957ab7210a6a249ec71510a50fb35b319ea1 lib/codeql/rust/elements/internal/generated/RecordExprFieldList.qll 179a97211fe7aa6265085d4d54115cdbc0e1cd7c9b2135591e8f36d6432f13d3 dd44bbbc1e83a1ed3a587afb729d7debf7aeb7b63245de181726af13090e50c0 @@ -557,12 +616,12 @@ lib/codeql/rust/elements/internal/generated/SelfParam.qll 076c583f7f34e29aaaf331 lib/codeql/rust/elements/internal/generated/SlicePat.qll 722b1bd47a980ac9c91d018133b251c65ee817682e06708ad130031fbd01379b 7e0ce13b9de2040d2ef9d0948aab3f39e5fdc28d38c40bfbee590e2125dbe41c lib/codeql/rust/elements/internal/generated/SliceTypeRepr.qll efd28e97936944ce56ab5f83aa16cf76cc1b42a39c123959d3a878ca13ceb84e 3435ea66d467f4234b9644ce63fa9072a7e9ac86e23d464ba18aea7802fc03a7 lib/codeql/rust/elements/internal/generated/SourceFile.qll 55d44c9f09c5ff28c4f715f779a0db74083e1180acaf0d410e63ca07b90d1cb5 78c0af48b0b64aa377413ea4799dfe977602a111208e1d25e4bdfa920dbd7238 -lib/codeql/rust/elements/internal/generated/Static.qll ea22838e0b7d9796dfaf5deda5b42f0187cc4fd30791a9dbe378b364d9485978 2496a208a702295984f3a29a9c3c3c19d5b1a6b16267e3dd4e6f3c5930e5faa2 +lib/codeql/rust/elements/internal/generated/Static.qll 0b336767104d2b852b9acd234a6b15bd1bb21c2c081895127529325164892435 a2c69c8db65e4137b227980ea22a967ada0b32d0cd21f011e8ca8cdf7d3f1459 lib/codeql/rust/elements/internal/generated/Stmt.qll 8473ff532dd5cc9d7decaddcd174b94d610f6ca0aec8e473cc051dad9f3db917 6ef7d2b5237c2dbdcacbf7d8b39109d4dc100229f2b28b5c9e3e4fbf673ba72b lib/codeql/rust/elements/internal/generated/StmtList.qll a667193e32341e17400867c6e359878c4e645ef9f5f4d97676afc0283a33a026 a320ed678ee359302e2fc1b70a9476705cd616fcfa44a499d32f0c7715627f73 lib/codeql/rust/elements/internal/generated/Struct.qll 4d57f0db12dc7ad3e31e750a24172ef1505406b4dab16386af0674bd18bf8f4b 1a73c83df926b996f629316f74c61ea775be04532ab61b56af904223354f033e -lib/codeql/rust/elements/internal/generated/Synth.qll b6d4e3f5fa38d7eca94495447b591fa9ed44cb5fcb4982077d54c8227d898401 a145534947c98e6dba0ba6d92d46f3eef34d01ce8b60d4b699db8bacc63c3c5b -lib/codeql/rust/elements/internal/generated/SynthConstructors.qll 3ceb5f6ee40b94955ce5f47feb454cc9129941aad3cdbe6e337bbe41e76a8a23 3ceb5f6ee40b94955ce5f47feb454cc9129941aad3cdbe6e337bbe41e76a8a23 +lib/codeql/rust/elements/internal/generated/Synth.qll a00cdbb2ba5213976055f2339ae8bb01a42fdae22c355f171aa2ddfbbd7ec200 f49fbdcc7ab69258e3a86039a95d17b069e64922cc6a32a872dc696067b65507 +lib/codeql/rust/elements/internal/generated/SynthConstructors.qll 0d7929ad8c03e683500c64d1cfff73da518be9836a5d32e44d2f311fb4ae1b96 0d7929ad8c03e683500c64d1cfff73da518be9836a5d32e44d2f311fb4ae1b96 lib/codeql/rust/elements/internal/generated/Token.qll 77a91a25ca5669703cf3a4353b591cef4d72caa6b0b9db07bb9e005d69c848d1 2fdffc4882ed3a6ca9ac6d1fb5f1ac5a471ca703e2ffdc642885fa558d6e373b lib/codeql/rust/elements/internal/generated/TokenTree.qll 8577c2b097c1be2f0f7daa5acfcf146f78674a424d99563e08a84dd3e6d91b46 d2f30764e84dbfc0a6a5d3d8a5f935cd432413688cb32da9c94e420fbc10665c lib/codeql/rust/elements/internal/generated/Trait.qll 8fa41b50fa0f68333534f2b66bb4ec8e103ff09ac8fa5c2cc64bc04beafec205 ce1c9aa6d0e2f05d28aab8e1165c3b9fb8e24681ade0cf6a9df2e8617abeae7e @@ -576,7 +635,7 @@ lib/codeql/rust/elements/internal/generated/TupleStructPat.qll 6539d0edbdc16e7df lib/codeql/rust/elements/internal/generated/TupleTypeRepr.qll dc494a783c495c96f2498230d160b59117cfa96d927861cd9d76676fefac8fb2 47da01697f143d4077978594b0c2f4c4bc5e92823dfcaad3ce8ab91725a536a3 lib/codeql/rust/elements/internal/generated/TypeAlias.qll 56162d01356f018a3acf20b79dcc49a939ebf4f422939fae6a20b91cbbda8564 903b61117f4caa362a350a9cbec701aa59eb2052aff848999ebfaaf574e02352 lib/codeql/rust/elements/internal/generated/TypeArg.qll e76ea103f7e9ead3be2c34718270d6893ca1980ee31e32ec19a92381e0040d73 9f2ea2d9434d57d7e3223e5d9d7662047e38bda26112751e122e2c1d03549eb5 -lib/codeql/rust/elements/internal/generated/TypeBound.qll 9d956fa99bb8153f575dd2959da021bc1a9207a78910a648f4429ab45f58175e ccf59e2bf4bea133335ae57acefe03d5650dcdef19960eeb00a9e3e4e3a3ef30 +lib/codeql/rust/elements/internal/generated/TypeBound.qll 28896d40ecb222ca0f42635a5820034755ea05d9d6c181455e7f5ac31f9d6139 87cc25695a256d9ab3cf9077a6a5602320ce7cc958248296420c937d9cf477ca lib/codeql/rust/elements/internal/generated/TypeBoundList.qll 31881cae2f71df5adf7a427357565bc0e7ba58c6a774a9d5835560a34c4db30f 1ff36ba34dd966d945d743781e3a1cccad4bb9fd5d32902dfd0bcad537501a85 lib/codeql/rust/elements/internal/generated/TypeParam.qll e0c6b029113c6ba99513ef903bbb1e8f09741d1a1c45dc31d07bb91edcf05657 a31402aa6128b1e7da79148e59ce065041c9f274cfc59937252725e21e63330c lib/codeql/rust/elements/internal/generated/TypeRepr.qll 1e7b9d2ddab86e35dad7c31a6453a2a60747420f8bc2e689d5163cab4fec71bb eb80e3947649e511e7f3555ffc1fd87199e7a32624449ca80ffad996cdf9e2f3 @@ -585,6 +644,8 @@ lib/codeql/rust/elements/internal/generated/Unextracted.qll 01563dfd769d6dc3c6b8 lib/codeql/rust/elements/internal/generated/Unimplemented.qll a3eb304781991bff1227de1e4422b68bf91e7b344e4f6c9e874b324e82a35e60 6bc4839fda3850a56dc993b79ef9ba921008395c8432b184e14438fba4566f21 lib/codeql/rust/elements/internal/generated/Union.qll 06a602aa7c7097e72fff6ea33d8fb4debaf4023b64b765a3d388ffecc9fa43e4 60d72bd1273e624e36f6227925adc611f5de098081d4f455c32f5af4938ee45d lib/codeql/rust/elements/internal/generated/Use.qll d42ccf3516a9f79ae8766f93ad5f09d3cdcd7b96844d4c9de64189b56018a7b4 70a9553a8f71f6cbfdd0f59a4b42292d13177613ceb0542436436e0ac2e1f8ee +lib/codeql/rust/elements/internal/generated/UseBoundGenericArg.qll 69162794e871291545ea04f61259b2d000671a96f7ca129f7dd9ed6e984067c4 31de9ebc0634b38e2347e0608b4ea888892f1f2732a2892464078cd8a07b4ee8 +lib/codeql/rust/elements/internal/generated/UseBoundGenericArgs.qll 05dca015d922935887856f3a0d577dbcf5b8f82bc384bdc9c8c2d0106419716d fcee14ed4f7a639b1ba721bd390fc0cdbfdc7c759e3092aa462d466fe390de45 lib/codeql/rust/elements/internal/generated/UseTree.qll b39cbc96e473802372726d580febbfa7d73668ba476095aa4a61fae914865913 40ce6515b7df068fa8c0a7e5ae8984f50b71f6f96d625d631b28d525e3e868b7 lib/codeql/rust/elements/internal/generated/UseTreeList.qll 829441cf309f008a6a9d2e784aa414ab4c11880a658f8ee71aa4df385cd2b6a8 ced82df94fea7a191f414f7e6496d13791d2f535046844b6f712a390663ac3d0 lib/codeql/rust/elements/internal/generated/Variant.qll e40dbb23e07c5b70adc577efdf7a064e773207f216cad8fe8905882b1da9f4a9 13f7be36d043afcfc156d2c01bb828de882df69aa732f284aa76c5f00b063544 @@ -596,7 +657,7 @@ lib/codeql/rust/elements/internal/generated/WhileExpr.qll 7edf1f23fbf953a2baabcd lib/codeql/rust/elements/internal/generated/WildcardPat.qll d74b70b57a0a66bfae017a329352a5b27a6b9e73dd5521d627f680e810c6c59e 4b913b548ba27ff3c82fcd32cf996ff329cb57d176d3bebd0fcef394486ea499 lib/codeql/rust/elements/internal/generated/YeetExpr.qll cac328200872a35337b4bcb15c851afb4743f82c080f9738d295571eb01d7392 94af734eea08129b587fed849b643e7572800e8330c0b57d727d41abda47930b lib/codeql/rust/elements/internal/generated/YieldExpr.qll 37e5f0c1e373a22bbc53d8b7f2c0e1f476e5be5080b8437c5e964f4e83fad79a 4a9a68643401637bf48e5c2b2f74a6bf0ddcb4ff76f6bffb61d436b685621e85 -lib/codeql/rust/elements.qll 2b46fa94e6775759fb730da818e0bf66e0f434c7e3d49f0e1989a5e5e6e48fd2 2b46fa94e6775759fb730da818e0bf66e0f434c7e3d49f0e1989a5e5e6e48fd2 +lib/codeql/rust/elements.qll fd66034a77b69f4741ca1488e8d04879da800bfa8d55492747c2b49d71a8067b fd66034a77b69f4741ca1488e8d04879da800bfa8d55492747c2b49d71a8067b test/extractor-tests/generated/Abi/Abi.ql 7f6e7dc4af86eca3ebdc79b10373988cd0871bd78b51997d3cffd969105e5fdd 2f936b6ca005c6157c755121584410c03e4a3949c23bee302fbe05ee10ce118f test/extractor-tests/generated/Abi/Abi_getAbiString.ql a496762fcec5a0887b87023bbf93e9b650f02e20113e25c44d6e4281ae8f5335 14109c7ce11ba25e3cd6e7f1b3fcb4cb00622f2a4eac91bfe43145c5f366bc52 test/extractor-tests/generated/ArgList/ArgList.ql e412927756e72165d0e7c5c9bd3fca89d08197bbf760db8fb7683c64bb2229bc 043dba8506946fbb87753e22c387987d7eded6ddb963aa067f9e60ef9024d684 @@ -610,9 +671,21 @@ test/extractor-tests/generated/ArrayRepeatExpr/ArrayRepeatExpr_getExpr.ql 6b0003 test/extractor-tests/generated/ArrayTypeRepr/ArrayTypeRepr.ql cfb831ccbc04092250931e0bd38c7b965fe0fd868081cd5f49fb11cd0da9aa0d 51e05a537928d7fd0aedd800f4d99c1f52630d75efe78bf7b016f1ad2380583b test/extractor-tests/generated/ArrayTypeRepr/ArrayTypeRepr_getConstArg.ql 38db5e08b7a78f52247b9894fe2f3dd80b89efd2a3ddce446b782f92f6e2efad 8a4d38deac59fff090617e928fb698fc3d57f3651f47b06d3f40dd4ba92b2c93 test/extractor-tests/generated/ArrayTypeRepr/ArrayTypeRepr_getElementTypeRepr.ql f74222b11cc52d3ac79e16d2943c1281c574fee954298752a309abc683798dbb 9701ebe468d76f72b21a7772a9e9bb82d8fd0a4e317437341f31f8395780dc33 -test/extractor-tests/generated/AsmExpr/AsmExpr.ql 1273efcd8aab7de2a04ead74075d25c8a22afc9f0e6a3fb4322e3508a2cb6f84 cdd5389a269c048f56afaf3e93a0fb076ba1f445d6dcfc6621d8a324cac2f421 +test/extractor-tests/generated/AsmClobberAbi/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 +test/extractor-tests/generated/AsmConst/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 +test/extractor-tests/generated/AsmDirSpec/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 +test/extractor-tests/generated/AsmExpr/AsmExpr.ql 81db9651d3e3cb2041316f95484bfe2a7d84a93d03a25bd6bcb3db813557a6e0 96c40bdbeadb1e52c6291a4da648304070db435e13f5881ab795f5874ef5885c +test/extractor-tests/generated/AsmExpr/AsmExpr_getAsmPiece.ql 334f92d8b5ab4326d844c0e515c7cda84ba92dc598d5787dc88fe05beb04a7dd 845d6a740f5b8593a42cb00ef0212e8eae063dcd4b4e60af57e37bdfb61e4c0d test/extractor-tests/generated/AsmExpr/AsmExpr_getAttr.ql 93e644147ddc4de00c882c32d17ff3c22822e116b67361d52217619153b7d4c4 4c0c3f72707f41e879426ff75c5631e9283dc0507316740bec22216c5feb04e9 -test/extractor-tests/generated/AsmExpr/AsmExpr_getExpr.ql 4a37390e948fe336b592342b0c2b63afeac3000ce1416f5875cc9b0ce5a826e4 d32df64ddc3ce1b0536018ddcff30a24d9099c67e6bcbe9a4693ffb6e478361d +test/extractor-tests/generated/AsmExpr/AsmExpr_getTemplate.ql d2070ad3509e5f4cf77d1ebd7ed730368627abf9c99e34cbece822f921f0a2dc 602646dd1bfcb3f6e09c1c3aa7a9d0cde38c60a397443c26d464fda15b9d86f5 +test/extractor-tests/generated/AsmLabel/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 +test/extractor-tests/generated/AsmOperandExpr/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 +test/extractor-tests/generated/AsmOperandNamed/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 +test/extractor-tests/generated/AsmOption/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 +test/extractor-tests/generated/AsmOptionsList/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 +test/extractor-tests/generated/AsmRegOperand/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 +test/extractor-tests/generated/AsmRegSpec/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 +test/extractor-tests/generated/AsmSym/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 test/extractor-tests/generated/AssocTypeArg/AssocTypeArg.ql 31b925ef046811d8f02253619b4346ed4998fc32230c025edd971d3167c15e39 f7974a74e5673a6d7665d48796561ca4b3231a06690d3544186078da467c86ff test/extractor-tests/generated/AssocTypeArg/AssocTypeArg_getConstArg.ql c81e25fd7885f13c0500e8f9b84195876e70f2b25ad604046f497818226c8542 62ac0e7c82da169c248e4f9e0e8f866d2f4e599b03a287c2bd407b95a5d9efc8 test/extractor-tests/generated/AssocTypeArg/AssocTypeArg_getGenericArgList.ql 4d20375752c000aab8d2e4988fff1a5c95689d114c8d63f37b389b95000ee873 957e360a4eeefa2536958770a7d150fda610d1d45c09900dbe66e470e361e294 @@ -908,6 +981,7 @@ test/extractor-tests/generated/ParenPat/ParenPat.ql 565182ccd81a9b420911b488c083 test/extractor-tests/generated/ParenPat/ParenPat_getPat.ql 96f3db0ec4e71fd8706192a16729203448ccc7b0a12ba0abeb0c20757b64fba1 0c66ba801869dc6d48dc0b2bca146757b868e8a88ad9429ba340837750f3a902 test/extractor-tests/generated/ParenTypeRepr/ParenTypeRepr.ql a96bb8b51d8c0c466afc1c076834fa16edf7e67fffe2f641799850dee43099a2 0e6c375e621b7a7756d39e8edd78b671e53d1aac757ac54a26747fe5259c5394 test/extractor-tests/generated/ParenTypeRepr/ParenTypeRepr_getTypeRepr.ql 64fe4ea708bc489ba64ed845f63cfbcd57c1179c57d95be309db37eac2f5eb71 0f4cbbfdf39d89830b5249cabf26d834fc2310b8a9579c19383c90cb4333afb7 +test/extractor-tests/generated/ParenthesizedArgList/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 test/extractor-tests/generated/Path/Path.ql 2bdcd99b3b5ffc83ac47d8cc27a4561d616bcf06844f0c452c699cd10ee640ca 5a7d7ffb8b0c04d6a8cbb2a953761df8561b796c4372bef1bd55c359b2f19911 test/extractor-tests/generated/Path/PathExpr.ql 5039fe730998a561f51813a0716e18c7c1d36b6da89936e4cfbdb4ef0e895560 cd3ddf8ab93cd573381807f59cded7fb3206f1dbdff582490be6f23bed2d6f29 test/extractor-tests/generated/Path/PathExpr_getAttr.ql 2ccac48cd91d86670c1d2742de20344135d424e6f0e3dafcc059555046f92d92 9b7b5f5f9e3674fad9b3a5bcd3cabc0dff32a95640da0fce6f4d0eb931f1757d @@ -918,10 +992,10 @@ test/extractor-tests/generated/Path/PathPat.ql 6b9d973009f1b4963c7c83b0f5051eda7 test/extractor-tests/generated/Path/PathPat_getPath.ql 6c0c71c80a6e631ea7775ec8660b470ff6b264bab14a399606cf113b1fb190fc 8e34cbb4d064db929e94652e1901ec4f26affa71e30e556b7acdff71dd622cbb test/extractor-tests/generated/Path/PathPat_getResolvedCrateOrigin.ql f690fd9a8773e7c73b70f2d64ee919fef8eee243c5a315c4a6d2713d43ea0e43 f37817427c36cec14a2e07f99d3a32f37f3f27a8eafdf170749ec2780054729b test/extractor-tests/generated/Path/PathPat_getResolvedPath.ql 55df4541a7b0e82198acfcedd7dc99eb564908270e4fb2b032bf05e40fba6fef a5932d884903da901263f88644c8585a45045190d7204f630506c5aece798288 -test/extractor-tests/generated/Path/PathSegment.ql be9d62d38b0c7f8b5a8ea86dcb18c62f24930f5931f52e6073414f291d8c0451 31288b7728d45715acf6ab751b833b29473a74d54d9b26f83a73d8c91e3c82da +test/extractor-tests/generated/Path/PathSegment.ql efd7f32edbd71f86b905fd63b8cbe4d6fcd6176390fc460a3a5a9375281c296e fb30126596a51e6f6c7470ef79b6c90b7057c5399f0de2d45787c60db74dbfb4 test/extractor-tests/generated/Path/PathSegment_getGenericArgList.ql 8f6e67b3e316309f20e21d7e7944accf66b0256b76fa50ee9a714044c6ec8cea 15f10a701fc4d3f9fd6734da90790cdbc8a1ddd57bf52695740acedcb2e6e485 test/extractor-tests/generated/Path/PathSegment_getNameRef.ql 799d284e2f9267d6bbe67aa7035e525ef347dc74cb3e2180e7b2171b5cb49674 592130bc2358989536abf62e8a261272c851483ede4f19783f7d61ffc1803e4b -test/extractor-tests/generated/Path/PathSegment_getParamList.ql e1e7b9b5062f936c33b7e7e29b21456448242df4985c6cffb54900063cfd3e63 6568e851cb6bcb32622f89d01e3aa6e7dd21940d21572a9988584e34bdf25366 +test/extractor-tests/generated/Path/PathSegment_getParenthesizedArgList.ql 0d5919b0a240678d84dc687de954ef6dc11fe4a20f54c56578c541c573bdf3f2 5d2094ad5c0b0b7f298260511c5072b129b121928394b27c49d39e69ba6a5870 test/extractor-tests/generated/Path/PathSegment_getPathType.ql 01942da6d0b10c1d15caec6abb8c53f1dc7f8c04a91a797f572063aa003dbc4b cb21e6cb160652527ba571265297dae86beffe191dd7dfc4d0beee45cb0cda29 test/extractor-tests/generated/Path/PathSegment_getRetType.ql 36386a514bc925f5b17ad87afba9fef7986900c1b791732de061213c6e86743f f38bcee68c1da19e70bb1e1c4a4047c763a466f1b8ef2c4f65f8c724c0b58197 test/extractor-tests/generated/Path/PathSegment_getReturnTypeSyntax.ql d1db51208a311c30af369ce2fdc3a3296e7d598b27bf4960b8b34622a9d9163b 561b1e38c6d8b301fdc016e1d012dd805fde1b42b0720c17d7b15535715047f2 @@ -1007,7 +1081,7 @@ test/extractor-tests/generated/SliceTypeRepr/SliceTypeRepr_getTypeRepr.ql a6604f test/extractor-tests/generated/SourceFile/SourceFile.ql c30a3c2c82be3114f3857295615e2ec1e59c823f0b65ea3918be85e6b7adb921 6a5bbe96f81861c953eb89f77ea64d580f996dca5950f717dd257a0b795453e6 test/extractor-tests/generated/SourceFile/SourceFile_getAttr.ql 450404306b3d991b23c60a7bb354631d37925e74dec7cc795452fe3263dc2358 07ffcc91523fd029bd599be28fe2fc909917e22f2b95c4257d3605f54f9d7551 test/extractor-tests/generated/SourceFile/SourceFile_getItem.ql f17e44bc0c829b2aadcb6d4ab9c687c10dc8f1afbed4e5190404e574d6ab3107 1cf49a37cc32a67fdc00d16b520daf39143e1b27205c1a610e24d2fe1a464b95 -test/extractor-tests/generated/Static/Static.ql b633f189040bc9d0592b77440b5b161b5c69cab97c4f47ef2c3754671fab0fc2 8dba58a18a217b741a7c474bffe0b3ab524cba8e1e4d6ddb22181170d2971fca +test/extractor-tests/generated/Static/Static.ql ac93af3e443bd2339e460a2d5273415da3d8e3e1cbbfc3a0af5b43b559047154 2f38e26764f2a07f5bf6ddadf7ebe9db5e087d784d1f2c4e79766ed10bb97859 test/extractor-tests/generated/Static/Static_getAttr.ql adb0bbf55fb962c0e9d317fd815c09c88793c04f2fb78dfd62c259420c70bc68 d317429171c69c4d5d926c26e97b47f5df87cf0552338f575cd3aeea0e57d2c2 test/extractor-tests/generated/Static/Static_getBody.ql e735bbd421e22c67db792671f5cb78291c437621fdfd700e5ef13b5b76b3684d 9148dc9d1899cedf817258a30a274e4f2c34659140090ca2afeb1b6f2f21e52f test/extractor-tests/generated/Static/Static_getCrateOrigin.ql f24ac3dac6a6e04d3cc58ae11b09749114a89816c28b96bf6be0e96b2e20d37f e4051426c5daa7e73c1a5a9023d6e50a2b46ebf194f45befbe3dd45e64831a55 @@ -1084,10 +1158,10 @@ test/extractor-tests/generated/TypeAlias/TypeAlias_getVisibility.ql a1851a78f31a test/extractor-tests/generated/TypeAlias/TypeAlias_getWhereClause.ql 0cd281b7b5d3a76e4ec1938d7dcebb41e24ed54e94f352dcf48cbcdb5d48b353 5898e71246d8ba7517dab1f8d726af02a7add79924c8e6b30ce2c760e1344e8f test/extractor-tests/generated/TypeArg/TypeArg.ql 32366a6163dcb2fbe2e98d739cc049f410a6523a135310e79b98a4c760926c8a dd52b9c138197ab07b6abbb66236c37261b47cc3201b1e1ab6ccb425b2cc6f44 test/extractor-tests/generated/TypeArg/TypeArg_getTypeRepr.ql de9102f7cb306503d1858cba40a48b8f40e192bd11b40104453a303db5c6e241 65105b7b2ee346a37a3d6ee61d4c12e34d0cd6ff4a3d79ee0634081a6f959ef6 -test/extractor-tests/generated/TypeBound/TypeBound.ql e309b93e3788a0350a347b3dd61b779fe8b0320fa9cb0250ccba7c1ed476e79e 6b09a853d1b2528fcbc394aa0490efb2171d4c7c6e7e4f70e84e60bd0f6e2894 -test/extractor-tests/generated/TypeBound/TypeBound_getGenericParamList.ql 7cf4ce64ea8048b85733fc2de627480465a616d62f57345c25bb62fdfda0ca59 e63b77ed3555b150cebf205016b1cc8d1b10fda315d5a21b3e60753ad602ea8f +test/extractor-tests/generated/TypeBound/TypeBound.ql 9f688714d359bf02c39bfc1ad767df0c37465241672ecc2c7acbed76703b5b1b ce49ac6d48f96f73c1de1cc2b053c06d7ab5ced234cd005549ccb96ef7fc6584 test/extractor-tests/generated/TypeBound/TypeBound_getLifetime.ql 615b0f5ccbffc425a3fa9480197bfae649c072717697f59d2e9b8112d2ff3fcf 1f969aca15be820eb27fe80317ad7fd4ce60f1a0fbcb4ae98b04828b0aeca632 test/extractor-tests/generated/TypeBound/TypeBound_getTypeRepr.ql 5c77f9ba0ce7ccde5a512e1eb6887e1588789d2bfbaadefa42177a144ca56e37 122ab4c2eb6cf285a1ce8818c00f60a12a53765b6999879a1c3596fb48eda39e +test/extractor-tests/generated/TypeBound/TypeBound_getUseBoundGenericArgs.ql bdb0cf5cee3da296738224e6f44dcb348009f71e645498e72418e1b7d9b955e8 96168156dca7227f9d90dd8381bc04823dee8fae54c7eba427f99cdcae920d44 test/extractor-tests/generated/TypeBoundList/TypeBoundList.ql 829c62ad88caa7707a4067c1a34f81971e936af1280a134b0b3532fbd4e4c887 10133eec05b902d5f0a6b3ed66156879914a83290014ba0ded26f1c3aaeb2b28 test/extractor-tests/generated/TypeBoundList/TypeBoundList_getBound.ql a6f6ec3f8d329da3509a8040ee2383ec6d9c66fe7c5685d94e90ac989a9e61b0 c812280f09658c63beb2a2ec0ab86e007819da08b6637bb4299c6ed6c90a4c6f test/extractor-tests/generated/TypeParam/TypeParam.ql bff624133257883477db43ae05cc17681ab20d5564c2025dc78758255a62eaf2 a25d4adbe6119f4f36fa57f08cf7ba52e0b54668047e685d811570e0126bcfaf @@ -1112,6 +1186,7 @@ test/extractor-tests/generated/Use/Use_getCrateOrigin.ql 912ebc1089aa3390d4142a3 test/extractor-tests/generated/Use/Use_getExtendedCanonicalPath.ql ccfde95c861cf4199e688b6efeeee9dab58a27cfecd520e39cc20f89143c03c9 6ff93df4134667d7cb74ae7efe102fe2db3ad4c67b4b5a0f8955f21997806f16 test/extractor-tests/generated/Use/Use_getUseTree.ql 1dfe6bb40b29fbf823d67fecfc36ba928b43f17c38227b8eedf19fa252edf3af aacdcc4cf418ef1eec267287d2af905fe73f5bcfb080ef5373d08da31c608720 test/extractor-tests/generated/Use/Use_getVisibility.ql 587f80acdd780042c48aeb347004be5e9fd9df063d263e6e4f2b660c48c53a8f 0c2c04f95838bca93dfe93fa208e1df7677797efc62b4e8052a4f9c5d20831dd +test/extractor-tests/generated/UseBoundGenericArgs/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 test/extractor-tests/generated/UseTree/UseTree.ql cb9f63051ae08cf8557b86b69b02cefe1732fc1e2daec34bcb891e271829cd86 eb46496aab9252b21eb0ccdd75792a97264885259c23d7e17e3013d943783947 test/extractor-tests/generated/UseTree/UseTree_getPath.ql 80384a99674bdda85315a36681cb22ad2ad094005a5543b63d930fc7e030dd5b 2cd92b5de8b4214527f8a58d641430f6804d9bd40927e1da0c7efda2f86f6544 test/extractor-tests/generated/UseTree/UseTree_getRename.ql ec3917501f3c89ac4974fab3f812d00b159ae6f2402dd20e5b4b3f8e8426391d db9ed981ce5f822aee349e5841d3126af7878d90e64140756ab4519552defe72 diff --git a/rust/ql/.gitattributes b/rust/ql/.gitattributes index 49142cf2701d..abc044d11208 100644 --- a/rust/ql/.gitattributes +++ b/rust/ql/.gitattributes @@ -8,7 +8,20 @@ /lib/codeql/rust/elements/ArrayListExpr.qll linguist-generated /lib/codeql/rust/elements/ArrayRepeatExpr.qll linguist-generated /lib/codeql/rust/elements/ArrayTypeRepr.qll linguist-generated +/lib/codeql/rust/elements/AsmClobberAbi.qll linguist-generated +/lib/codeql/rust/elements/AsmConst.qll linguist-generated +/lib/codeql/rust/elements/AsmDirSpec.qll linguist-generated /lib/codeql/rust/elements/AsmExpr.qll linguist-generated +/lib/codeql/rust/elements/AsmLabel.qll linguist-generated +/lib/codeql/rust/elements/AsmOperand.qll linguist-generated +/lib/codeql/rust/elements/AsmOperandExpr.qll linguist-generated +/lib/codeql/rust/elements/AsmOperandNamed.qll linguist-generated +/lib/codeql/rust/elements/AsmOption.qll linguist-generated +/lib/codeql/rust/elements/AsmOptionsList.qll linguist-generated +/lib/codeql/rust/elements/AsmPiece.qll linguist-generated +/lib/codeql/rust/elements/AsmRegOperand.qll linguist-generated +/lib/codeql/rust/elements/AsmRegSpec.qll linguist-generated +/lib/codeql/rust/elements/AsmSym.qll linguist-generated /lib/codeql/rust/elements/AssocItem.qll linguist-generated /lib/codeql/rust/elements/AssocItemList.qll linguist-generated /lib/codeql/rust/elements/AssocTypeArg.qll linguist-generated @@ -104,6 +117,7 @@ /lib/codeql/rust/elements/ParenExpr.qll linguist-generated /lib/codeql/rust/elements/ParenPat.qll linguist-generated /lib/codeql/rust/elements/ParenTypeRepr.qll linguist-generated +/lib/codeql/rust/elements/ParenthesizedArgList.qll linguist-generated /lib/codeql/rust/elements/Pat.qll linguist-generated /lib/codeql/rust/elements/Path.qll linguist-generated /lib/codeql/rust/elements/PathAstNode.qll linguist-generated @@ -163,6 +177,8 @@ /lib/codeql/rust/elements/Unimplemented.qll linguist-generated /lib/codeql/rust/elements/Union.qll linguist-generated /lib/codeql/rust/elements/Use.qll linguist-generated +/lib/codeql/rust/elements/UseBoundGenericArg.qll linguist-generated +/lib/codeql/rust/elements/UseBoundGenericArgs.qll linguist-generated /lib/codeql/rust/elements/UseTree.qll linguist-generated /lib/codeql/rust/elements/UseTreeList.qll linguist-generated /lib/codeql/rust/elements/Variant.qll linguist-generated @@ -184,8 +200,32 @@ /lib/codeql/rust/elements/internal/ArrayExprInternalImpl.qll linguist-generated /lib/codeql/rust/elements/internal/ArrayTypeReprConstructor.qll linguist-generated /lib/codeql/rust/elements/internal/ArrayTypeReprImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmClobberAbiConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmClobberAbiImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmConstConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmConstImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmDirSpecConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmDirSpecImpl.qll linguist-generated /lib/codeql/rust/elements/internal/AsmExprConstructor.qll linguist-generated /lib/codeql/rust/elements/internal/AsmExprImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmLabelConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmLabelImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmOperandExprConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmOperandExprImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmOperandImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmOperandNamedConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmOperandNamedImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmOptionConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmOptionImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmOptionsListConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmOptionsListImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmPieceImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmRegOperandConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmRegOperandImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmRegSpecConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmRegSpecImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmSymConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/AsmSymImpl.qll linguist-generated /lib/codeql/rust/elements/internal/AssocItemImpl.qll linguist-generated /lib/codeql/rust/elements/internal/AssocItemListConstructor.qll linguist-generated /lib/codeql/rust/elements/internal/AssocItemListImpl.qll linguist-generated @@ -309,6 +349,8 @@ /lib/codeql/rust/elements/internal/ParenExprConstructor.qll linguist-generated /lib/codeql/rust/elements/internal/ParenPatConstructor.qll linguist-generated /lib/codeql/rust/elements/internal/ParenTypeReprConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/ParenthesizedArgListConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/ParenthesizedArgListImpl.qll linguist-generated /lib/codeql/rust/elements/internal/PatImpl.qll linguist-generated /lib/codeql/rust/elements/internal/PathAstNodeImpl.qll linguist-generated /lib/codeql/rust/elements/internal/PathConstructor.qll linguist-generated @@ -397,6 +439,9 @@ /lib/codeql/rust/elements/internal/UnimplementedConstructor.qll linguist-generated /lib/codeql/rust/elements/internal/UnimplementedImpl.qll linguist-generated /lib/codeql/rust/elements/internal/UnionConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/UseBoundGenericArgImpl.qll linguist-generated +/lib/codeql/rust/elements/internal/UseBoundGenericArgsConstructor.qll linguist-generated +/lib/codeql/rust/elements/internal/UseBoundGenericArgsImpl.qll linguist-generated /lib/codeql/rust/elements/internal/UseConstructor.qll linguist-generated /lib/codeql/rust/elements/internal/UseImpl.qll linguist-generated /lib/codeql/rust/elements/internal/UseTreeConstructor.qll linguist-generated @@ -426,7 +471,20 @@ /lib/codeql/rust/elements/internal/generated/ArrayListExpr.qll linguist-generated /lib/codeql/rust/elements/internal/generated/ArrayRepeatExpr.qll linguist-generated /lib/codeql/rust/elements/internal/generated/ArrayTypeRepr.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmClobberAbi.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmConst.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmDirSpec.qll linguist-generated /lib/codeql/rust/elements/internal/generated/AsmExpr.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmLabel.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmOperand.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmOperandExpr.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmOperandNamed.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmOption.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmOptionsList.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmPiece.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmRegOperand.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmRegSpec.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/AsmSym.qll linguist-generated /lib/codeql/rust/elements/internal/generated/AssocItem.qll linguist-generated /lib/codeql/rust/elements/internal/generated/AssocItemList.qll linguist-generated /lib/codeql/rust/elements/internal/generated/AssocTypeArg.qll linguist-generated @@ -524,6 +582,7 @@ /lib/codeql/rust/elements/internal/generated/ParenPat.qll linguist-generated /lib/codeql/rust/elements/internal/generated/ParenTypeRepr.qll linguist-generated /lib/codeql/rust/elements/internal/generated/ParentChild.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/ParenthesizedArgList.qll linguist-generated /lib/codeql/rust/elements/internal/generated/Pat.qll linguist-generated /lib/codeql/rust/elements/internal/generated/Path.qll linguist-generated /lib/codeql/rust/elements/internal/generated/PathAstNode.qll linguist-generated @@ -587,6 +646,8 @@ /lib/codeql/rust/elements/internal/generated/Unimplemented.qll linguist-generated /lib/codeql/rust/elements/internal/generated/Union.qll linguist-generated /lib/codeql/rust/elements/internal/generated/Use.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/UseBoundGenericArg.qll linguist-generated +/lib/codeql/rust/elements/internal/generated/UseBoundGenericArgs.qll linguist-generated /lib/codeql/rust/elements/internal/generated/UseTree.qll linguist-generated /lib/codeql/rust/elements/internal/generated/UseTreeList.qll linguist-generated /lib/codeql/rust/elements/internal/generated/Variant.qll linguist-generated @@ -612,9 +673,21 @@ /test/extractor-tests/generated/ArrayTypeRepr/ArrayTypeRepr.ql linguist-generated /test/extractor-tests/generated/ArrayTypeRepr/ArrayTypeRepr_getConstArg.ql linguist-generated /test/extractor-tests/generated/ArrayTypeRepr/ArrayTypeRepr_getElementTypeRepr.ql linguist-generated +/test/extractor-tests/generated/AsmClobberAbi/MISSING_SOURCE.txt linguist-generated +/test/extractor-tests/generated/AsmConst/MISSING_SOURCE.txt linguist-generated +/test/extractor-tests/generated/AsmDirSpec/MISSING_SOURCE.txt linguist-generated /test/extractor-tests/generated/AsmExpr/AsmExpr.ql linguist-generated +/test/extractor-tests/generated/AsmExpr/AsmExpr_getAsmPiece.ql linguist-generated /test/extractor-tests/generated/AsmExpr/AsmExpr_getAttr.ql linguist-generated -/test/extractor-tests/generated/AsmExpr/AsmExpr_getExpr.ql linguist-generated +/test/extractor-tests/generated/AsmExpr/AsmExpr_getTemplate.ql linguist-generated +/test/extractor-tests/generated/AsmLabel/MISSING_SOURCE.txt linguist-generated +/test/extractor-tests/generated/AsmOperandExpr/MISSING_SOURCE.txt linguist-generated +/test/extractor-tests/generated/AsmOperandNamed/MISSING_SOURCE.txt linguist-generated +/test/extractor-tests/generated/AsmOption/MISSING_SOURCE.txt linguist-generated +/test/extractor-tests/generated/AsmOptionsList/MISSING_SOURCE.txt linguist-generated +/test/extractor-tests/generated/AsmRegOperand/MISSING_SOURCE.txt linguist-generated +/test/extractor-tests/generated/AsmRegSpec/MISSING_SOURCE.txt linguist-generated +/test/extractor-tests/generated/AsmSym/MISSING_SOURCE.txt linguist-generated /test/extractor-tests/generated/AssocTypeArg/AssocTypeArg.ql linguist-generated /test/extractor-tests/generated/AssocTypeArg/AssocTypeArg_getConstArg.ql linguist-generated /test/extractor-tests/generated/AssocTypeArg/AssocTypeArg_getGenericArgList.ql linguist-generated @@ -910,6 +983,7 @@ /test/extractor-tests/generated/ParenPat/ParenPat_getPat.ql linguist-generated /test/extractor-tests/generated/ParenTypeRepr/ParenTypeRepr.ql linguist-generated /test/extractor-tests/generated/ParenTypeRepr/ParenTypeRepr_getTypeRepr.ql linguist-generated +/test/extractor-tests/generated/ParenthesizedArgList/MISSING_SOURCE.txt linguist-generated /test/extractor-tests/generated/Path/Path.ql linguist-generated /test/extractor-tests/generated/Path/PathExpr.ql linguist-generated /test/extractor-tests/generated/Path/PathExpr_getAttr.ql linguist-generated @@ -923,7 +997,7 @@ /test/extractor-tests/generated/Path/PathSegment.ql linguist-generated /test/extractor-tests/generated/Path/PathSegment_getGenericArgList.ql linguist-generated /test/extractor-tests/generated/Path/PathSegment_getNameRef.ql linguist-generated -/test/extractor-tests/generated/Path/PathSegment_getParamList.ql linguist-generated +/test/extractor-tests/generated/Path/PathSegment_getParenthesizedArgList.ql linguist-generated /test/extractor-tests/generated/Path/PathSegment_getPathType.ql linguist-generated /test/extractor-tests/generated/Path/PathSegment_getRetType.ql linguist-generated /test/extractor-tests/generated/Path/PathSegment_getReturnTypeSyntax.ql linguist-generated @@ -1087,9 +1161,9 @@ /test/extractor-tests/generated/TypeArg/TypeArg.ql linguist-generated /test/extractor-tests/generated/TypeArg/TypeArg_getTypeRepr.ql linguist-generated /test/extractor-tests/generated/TypeBound/TypeBound.ql linguist-generated -/test/extractor-tests/generated/TypeBound/TypeBound_getGenericParamList.ql linguist-generated /test/extractor-tests/generated/TypeBound/TypeBound_getLifetime.ql linguist-generated /test/extractor-tests/generated/TypeBound/TypeBound_getTypeRepr.ql linguist-generated +/test/extractor-tests/generated/TypeBound/TypeBound_getUseBoundGenericArgs.ql linguist-generated /test/extractor-tests/generated/TypeBoundList/TypeBoundList.ql linguist-generated /test/extractor-tests/generated/TypeBoundList/TypeBoundList_getBound.ql linguist-generated /test/extractor-tests/generated/TypeParam/TypeParam.ql linguist-generated @@ -1114,6 +1188,7 @@ /test/extractor-tests/generated/Use/Use_getExtendedCanonicalPath.ql linguist-generated /test/extractor-tests/generated/Use/Use_getUseTree.ql linguist-generated /test/extractor-tests/generated/Use/Use_getVisibility.ql linguist-generated +/test/extractor-tests/generated/UseBoundGenericArgs/MISSING_SOURCE.txt linguist-generated /test/extractor-tests/generated/UseTree/UseTree.ql linguist-generated /test/extractor-tests/generated/UseTree/UseTree_getPath.ql linguist-generated /test/extractor-tests/generated/UseTree/UseTree_getRename.ql linguist-generated 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 e4c1078b682e..da99fc98fdf1 100644 --- a/rust/ql/lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll +++ b/rust/ql/lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll @@ -190,7 +190,7 @@ module MakeCfgNodes Input> { override predicate relevantChild(AstNode child) { none() or - child = this.getExpr() + child = this.getTemplate(_) } } @@ -210,6 +210,21 @@ module MakeCfgNodes Input> { /** Gets the underlying `AsmExpr`. */ AsmExpr getAsmExpr() { result = node } + /** + * Gets the `index`th asm piece of this asm expression (0-based). + */ + AsmPiece getAsmPiece(int index) { result = node.getAsmPiece(index) } + + /** + * Gets any of the asm pieces of this asm expression. + */ + AsmPiece getAnAsmPiece() { result = this.getAsmPiece(_) } + + /** + * Gets the number of asm pieces of this asm expression. + */ + int getNumberOfAsmPieces() { result = count(int i | exists(this.getAsmPiece(i))) } + /** * Gets the `index`th attr of this asm expression (0-based). */ @@ -226,16 +241,21 @@ module MakeCfgNodes Input> { int getNumberOfAttrs() { result = count(int i | exists(this.getAttr(i))) } /** - * Gets the expression of this asm expression, if it exists. + * Gets the `index`th template of this asm expression (0-based). */ - ExprCfgNode getExpr() { - any(ChildMapping mapping).hasCfgChild(node, node.getExpr(), this, result) + ExprCfgNode getTemplate(int index) { + any(ChildMapping mapping).hasCfgChild(node, node.getTemplate(index), this, result) } /** - * Holds if `getExpr()` exists. + * Gets any of the templates of this asm expression. */ - predicate hasExpr() { exists(this.getExpr()) } + ExprCfgNode getATemplate() { result = this.getTemplate(_) } + + /** + * Gets the number of templates of this asm expression. + */ + int getNumberOfTemplates() { result = count(int i | exists(this.getTemplate(i))) } } final private class ParentAwaitExpr extends ParentAstNode, AwaitExpr { @@ -3229,14 +3249,13 @@ module MakeCfgNodes Input> { cfgNode ) or - pred = "getExpr" and + pred = "getTemplate" and parent = any(Nodes::AsmExprCfgNode cfgNode, AsmExpr astNode | astNode = cfgNode.getAsmExpr() and - child = getDesugared(astNode.getExpr()) and - i = -1 and + child = getDesugared(astNode.getTemplate(i)) and hasCfgNode(child) and - not child = cfgNode.getExpr().getAstNode() + not child = cfgNode.getTemplate(i).getAstNode() | cfgNode ) diff --git a/rust/ql/lib/codeql/rust/elements.qll b/rust/ql/lib/codeql/rust/elements.qll index 725f044ee18e..3bcb8cafb067 100644 --- a/rust/ql/lib/codeql/rust/elements.qll +++ b/rust/ql/lib/codeql/rust/elements.qll @@ -11,7 +11,20 @@ import codeql.rust.elements.ArrayExpr import codeql.rust.elements.ArrayListExpr import codeql.rust.elements.ArrayRepeatExpr import codeql.rust.elements.ArrayTypeRepr +import codeql.rust.elements.AsmClobberAbi +import codeql.rust.elements.AsmConst +import codeql.rust.elements.AsmDirSpec import codeql.rust.elements.AsmExpr +import codeql.rust.elements.AsmLabel +import codeql.rust.elements.AsmOperand +import codeql.rust.elements.AsmOperandExpr +import codeql.rust.elements.AsmOperandNamed +import codeql.rust.elements.AsmOption +import codeql.rust.elements.AsmOptionsList +import codeql.rust.elements.AsmPiece +import codeql.rust.elements.AsmRegOperand +import codeql.rust.elements.AsmRegSpec +import codeql.rust.elements.AsmSym import codeql.rust.elements.AssocItem import codeql.rust.elements.AssocItemList import codeql.rust.elements.AssocTypeArg @@ -107,6 +120,7 @@ import codeql.rust.elements.ParamList import codeql.rust.elements.ParenExpr import codeql.rust.elements.ParenPat import codeql.rust.elements.ParenTypeRepr +import codeql.rust.elements.ParenthesizedArgList import codeql.rust.elements.Pat import codeql.rust.elements.Path import codeql.rust.elements.PathAstNode @@ -166,6 +180,8 @@ import codeql.rust.elements.Unextracted import codeql.rust.elements.Unimplemented import codeql.rust.elements.Union import codeql.rust.elements.Use +import codeql.rust.elements.UseBoundGenericArg +import codeql.rust.elements.UseBoundGenericArgs import codeql.rust.elements.UseTree import codeql.rust.elements.UseTreeList import codeql.rust.elements.Variant diff --git a/rust/ql/lib/codeql/rust/elements/AsmClobberAbi.qll b/rust/ql/lib/codeql/rust/elements/AsmClobberAbi.qll new file mode 100644 index 000000000000..422d02d8ce0c --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmClobberAbi.qll @@ -0,0 +1,9 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmClobberAbi`. + */ + +private import internal.AsmClobberAbiImpl +import codeql.rust.elements.AsmPiece + +final class AsmClobberAbi = Impl::AsmClobberAbi; diff --git a/rust/ql/lib/codeql/rust/elements/AsmConst.qll b/rust/ql/lib/codeql/rust/elements/AsmConst.qll new file mode 100644 index 000000000000..b02dc20b8654 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmConst.qll @@ -0,0 +1,10 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmConst`. + */ + +private import internal.AsmConstImpl +import codeql.rust.elements.AsmOperand +import codeql.rust.elements.Expr + +final class AsmConst = Impl::AsmConst; diff --git a/rust/ql/lib/codeql/rust/elements/AsmDirSpec.qll b/rust/ql/lib/codeql/rust/elements/AsmDirSpec.qll new file mode 100644 index 000000000000..39af5ad9e075 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmDirSpec.qll @@ -0,0 +1,9 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmDirSpec`. + */ + +private import internal.AsmDirSpecImpl +import codeql.rust.elements.AstNode + +final class AsmDirSpec = Impl::AsmDirSpec; diff --git a/rust/ql/lib/codeql/rust/elements/AsmExpr.qll b/rust/ql/lib/codeql/rust/elements/AsmExpr.qll index da0fdc8b6cc0..aab266069ed8 100644 --- a/rust/ql/lib/codeql/rust/elements/AsmExpr.qll +++ b/rust/ql/lib/codeql/rust/elements/AsmExpr.qll @@ -4,6 +4,7 @@ */ private import internal.AsmExprImpl +import codeql.rust.elements.AsmPiece import codeql.rust.elements.Attr import codeql.rust.elements.Expr diff --git a/rust/ql/lib/codeql/rust/elements/AsmLabel.qll b/rust/ql/lib/codeql/rust/elements/AsmLabel.qll new file mode 100644 index 000000000000..e54998042788 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmLabel.qll @@ -0,0 +1,10 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmLabel`. + */ + +private import internal.AsmLabelImpl +import codeql.rust.elements.AsmOperand +import codeql.rust.elements.BlockExpr + +final class AsmLabel = Impl::AsmLabel; diff --git a/rust/ql/lib/codeql/rust/elements/AsmOperand.qll b/rust/ql/lib/codeql/rust/elements/AsmOperand.qll new file mode 100644 index 000000000000..06c0f79193f8 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmOperand.qll @@ -0,0 +1,9 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmOperand`. + */ + +private import internal.AsmOperandImpl +import codeql.rust.elements.AstNode + +final class AsmOperand = Impl::AsmOperand; diff --git a/rust/ql/lib/codeql/rust/elements/AsmOperandExpr.qll b/rust/ql/lib/codeql/rust/elements/AsmOperandExpr.qll new file mode 100644 index 000000000000..cccc425d3fb6 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmOperandExpr.qll @@ -0,0 +1,10 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmOperandExpr`. + */ + +private import internal.AsmOperandExprImpl +import codeql.rust.elements.AstNode +import codeql.rust.elements.Expr + +final class AsmOperandExpr = Impl::AsmOperandExpr; diff --git a/rust/ql/lib/codeql/rust/elements/AsmOperandNamed.qll b/rust/ql/lib/codeql/rust/elements/AsmOperandNamed.qll new file mode 100644 index 000000000000..6c759280912f --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmOperandNamed.qll @@ -0,0 +1,11 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmOperandNamed`. + */ + +private import internal.AsmOperandNamedImpl +import codeql.rust.elements.AsmOperand +import codeql.rust.elements.AsmPiece +import codeql.rust.elements.Name + +final class AsmOperandNamed = Impl::AsmOperandNamed; diff --git a/rust/ql/lib/codeql/rust/elements/AsmOption.qll b/rust/ql/lib/codeql/rust/elements/AsmOption.qll new file mode 100644 index 000000000000..10dd031f0a60 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmOption.qll @@ -0,0 +1,9 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmOption`. + */ + +private import internal.AsmOptionImpl +import codeql.rust.elements.AstNode + +final class AsmOption = Impl::AsmOption; diff --git a/rust/ql/lib/codeql/rust/elements/AsmOptionsList.qll b/rust/ql/lib/codeql/rust/elements/AsmOptionsList.qll new file mode 100644 index 000000000000..94e82023e170 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmOptionsList.qll @@ -0,0 +1,10 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmOptionsList`. + */ + +private import internal.AsmOptionsListImpl +import codeql.rust.elements.AsmOption +import codeql.rust.elements.AsmPiece + +final class AsmOptionsList = Impl::AsmOptionsList; diff --git a/rust/ql/lib/codeql/rust/elements/AsmPiece.qll b/rust/ql/lib/codeql/rust/elements/AsmPiece.qll new file mode 100644 index 000000000000..18debaffc7cc --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmPiece.qll @@ -0,0 +1,9 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmPiece`. + */ + +private import internal.AsmPieceImpl +import codeql.rust.elements.AstNode + +final class AsmPiece = Impl::AsmPiece; diff --git a/rust/ql/lib/codeql/rust/elements/AsmRegOperand.qll b/rust/ql/lib/codeql/rust/elements/AsmRegOperand.qll new file mode 100644 index 000000000000..4ce8deb4b698 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmRegOperand.qll @@ -0,0 +1,12 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmRegOperand`. + */ + +private import internal.AsmRegOperandImpl +import codeql.rust.elements.AsmDirSpec +import codeql.rust.elements.AsmOperand +import codeql.rust.elements.AsmOperandExpr +import codeql.rust.elements.AsmRegSpec + +final class AsmRegOperand = Impl::AsmRegOperand; diff --git a/rust/ql/lib/codeql/rust/elements/AsmRegSpec.qll b/rust/ql/lib/codeql/rust/elements/AsmRegSpec.qll new file mode 100644 index 000000000000..5408dddc99be --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmRegSpec.qll @@ -0,0 +1,10 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmRegSpec`. + */ + +private import internal.AsmRegSpecImpl +import codeql.rust.elements.AstNode +import codeql.rust.elements.NameRef + +final class AsmRegSpec = Impl::AsmRegSpec; diff --git a/rust/ql/lib/codeql/rust/elements/AsmSym.qll b/rust/ql/lib/codeql/rust/elements/AsmSym.qll new file mode 100644 index 000000000000..b193bc2ce9c2 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/AsmSym.qll @@ -0,0 +1,10 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `AsmSym`. + */ + +private import internal.AsmSymImpl +import codeql.rust.elements.AsmOperand +import codeql.rust.elements.Path + +final class AsmSym = Impl::AsmSym; diff --git a/rust/ql/lib/codeql/rust/elements/Lifetime.qll b/rust/ql/lib/codeql/rust/elements/Lifetime.qll index 512d04c1ee99..1540e02db123 100644 --- a/rust/ql/lib/codeql/rust/elements/Lifetime.qll +++ b/rust/ql/lib/codeql/rust/elements/Lifetime.qll @@ -4,7 +4,7 @@ */ private import internal.LifetimeImpl -import codeql.rust.elements.AstNode +import codeql.rust.elements.UseBoundGenericArg /** * A Lifetime. For example: diff --git a/rust/ql/lib/codeql/rust/elements/NameRef.qll b/rust/ql/lib/codeql/rust/elements/NameRef.qll index b9bc8ad82e1c..ed37aa7ca323 100644 --- a/rust/ql/lib/codeql/rust/elements/NameRef.qll +++ b/rust/ql/lib/codeql/rust/elements/NameRef.qll @@ -4,7 +4,7 @@ */ private import internal.NameRefImpl -import codeql.rust.elements.AstNode +import codeql.rust.elements.UseBoundGenericArg /** * A NameRef. For example: diff --git a/rust/ql/lib/codeql/rust/elements/ParenthesizedArgList.qll b/rust/ql/lib/codeql/rust/elements/ParenthesizedArgList.qll new file mode 100644 index 000000000000..d32c2bf382cb --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/ParenthesizedArgList.qll @@ -0,0 +1,10 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `ParenthesizedArgList`. + */ + +private import internal.ParenthesizedArgListImpl +import codeql.rust.elements.AstNode +import codeql.rust.elements.TypeArg + +final class ParenthesizedArgList = Impl::ParenthesizedArgList; diff --git a/rust/ql/lib/codeql/rust/elements/PathSegment.qll b/rust/ql/lib/codeql/rust/elements/PathSegment.qll index 9eb0830a3540..5d7c2559ad23 100644 --- a/rust/ql/lib/codeql/rust/elements/PathSegment.qll +++ b/rust/ql/lib/codeql/rust/elements/PathSegment.qll @@ -7,7 +7,7 @@ private import internal.PathSegmentImpl import codeql.rust.elements.AstNode import codeql.rust.elements.GenericArgList import codeql.rust.elements.NameRef -import codeql.rust.elements.ParamList +import codeql.rust.elements.ParenthesizedArgList import codeql.rust.elements.PathTypeRepr import codeql.rust.elements.RetTypeRepr import codeql.rust.elements.ReturnTypeSyntax diff --git a/rust/ql/lib/codeql/rust/elements/TypeBound.qll b/rust/ql/lib/codeql/rust/elements/TypeBound.qll index 6760b562e8f8..52f9483afed2 100644 --- a/rust/ql/lib/codeql/rust/elements/TypeBound.qll +++ b/rust/ql/lib/codeql/rust/elements/TypeBound.qll @@ -5,9 +5,9 @@ private import internal.TypeBoundImpl import codeql.rust.elements.AstNode -import codeql.rust.elements.GenericParamList import codeql.rust.elements.Lifetime import codeql.rust.elements.TypeRepr +import codeql.rust.elements.UseBoundGenericArgs /** * A TypeBound. For example: diff --git a/rust/ql/lib/codeql/rust/elements/UseBoundGenericArg.qll b/rust/ql/lib/codeql/rust/elements/UseBoundGenericArg.qll new file mode 100644 index 000000000000..3d3bc8d2e0ae --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/UseBoundGenericArg.qll @@ -0,0 +1,9 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `UseBoundGenericArg`. + */ + +private import internal.UseBoundGenericArgImpl +import codeql.rust.elements.AstNode + +final class UseBoundGenericArg = Impl::UseBoundGenericArg; diff --git a/rust/ql/lib/codeql/rust/elements/UseBoundGenericArgs.qll b/rust/ql/lib/codeql/rust/elements/UseBoundGenericArgs.qll new file mode 100644 index 000000000000..2e0fe43db24b --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/UseBoundGenericArgs.qll @@ -0,0 +1,10 @@ +// generated by codegen, do not edit +/** + * This module provides the public class `UseBoundGenericArgs`. + */ + +private import internal.UseBoundGenericArgsImpl +import codeql.rust.elements.AstNode +import codeql.rust.elements.UseBoundGenericArg + +final class UseBoundGenericArgs = Impl::UseBoundGenericArgs; diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmClobberAbiConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmClobberAbiConstructor.qll new file mode 100644 index 000000000000..0ef66a226fc0 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmClobberAbiConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `AsmClobberAbi` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `AsmClobberAbi` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructAsmClobberAbi(Raw::AsmClobberAbi id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmClobberAbiImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmClobberAbiImpl.qll new file mode 100644 index 000000000000..155676828e82 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmClobberAbiImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmClobberAbi`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmClobberAbi + +/** + * INTERNAL: This module contains the customizable definition of `AsmClobberAbi` and should not + * be referenced directly. + */ +module Impl { + class AsmClobberAbi extends Generated::AsmClobberAbi { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmConstConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmConstConstructor.qll new file mode 100644 index 000000000000..bae59830699d --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmConstConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `AsmConst` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `AsmConst` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructAsmConst(Raw::AsmConst id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmConstImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmConstImpl.qll new file mode 100644 index 000000000000..95d11f936d73 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmConstImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmConst`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmConst + +/** + * INTERNAL: This module contains the customizable definition of `AsmConst` and should not + * be referenced directly. + */ +module Impl { + class AsmConst extends Generated::AsmConst { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmDirSpecConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmDirSpecConstructor.qll new file mode 100644 index 000000000000..72d5a649b464 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmDirSpecConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `AsmDirSpec` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `AsmDirSpec` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructAsmDirSpec(Raw::AsmDirSpec id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmDirSpecImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmDirSpecImpl.qll new file mode 100644 index 000000000000..10b04b298d4d --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmDirSpecImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmDirSpec`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmDirSpec + +/** + * INTERNAL: This module contains the customizable definition of `AsmDirSpec` and should not + * be referenced directly. + */ +module Impl { + class AsmDirSpec extends Generated::AsmDirSpec { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmLabelConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmLabelConstructor.qll new file mode 100644 index 000000000000..a0cea91d4cc1 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmLabelConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `AsmLabel` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `AsmLabel` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructAsmLabel(Raw::AsmLabel id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmLabelImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmLabelImpl.qll new file mode 100644 index 000000000000..6f393f9ed481 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmLabelImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmLabel`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmLabel + +/** + * INTERNAL: This module contains the customizable definition of `AsmLabel` and should not + * be referenced directly. + */ +module Impl { + class AsmLabel extends Generated::AsmLabel { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmOperandExprConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmOperandExprConstructor.qll new file mode 100644 index 000000000000..89615a92e8db --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmOperandExprConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `AsmOperandExpr` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `AsmOperandExpr` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructAsmOperandExpr(Raw::AsmOperandExpr id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmOperandExprImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmOperandExprImpl.qll new file mode 100644 index 000000000000..ebf9a7ae2ed2 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmOperandExprImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmOperandExpr`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmOperandExpr + +/** + * INTERNAL: This module contains the customizable definition of `AsmOperandExpr` and should not + * be referenced directly. + */ +module Impl { + class AsmOperandExpr extends Generated::AsmOperandExpr { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmOperandImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmOperandImpl.qll new file mode 100644 index 000000000000..786e8bac666a --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmOperandImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmOperand`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmOperand + +/** + * INTERNAL: This module contains the customizable definition of `AsmOperand` and should not + * be referenced directly. + */ +module Impl { + class AsmOperand extends Generated::AsmOperand { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmOperandNamedConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmOperandNamedConstructor.qll new file mode 100644 index 000000000000..df9d80e63320 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmOperandNamedConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `AsmOperandNamed` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `AsmOperandNamed` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructAsmOperandNamed(Raw::AsmOperandNamed id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmOperandNamedImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmOperandNamedImpl.qll new file mode 100644 index 000000000000..c9903d908047 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmOperandNamedImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmOperandNamed`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmOperandNamed + +/** + * INTERNAL: This module contains the customizable definition of `AsmOperandNamed` and should not + * be referenced directly. + */ +module Impl { + class AsmOperandNamed extends Generated::AsmOperandNamed { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmOptionConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmOptionConstructor.qll new file mode 100644 index 000000000000..6f9eca90e27c --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmOptionConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `AsmOption` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `AsmOption` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructAsmOption(Raw::AsmOption id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmOptionImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmOptionImpl.qll new file mode 100644 index 000000000000..4f0ea60c798b --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmOptionImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmOption`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmOption + +/** + * INTERNAL: This module contains the customizable definition of `AsmOption` and should not + * be referenced directly. + */ +module Impl { + class AsmOption extends Generated::AsmOption { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmOptionsListConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmOptionsListConstructor.qll new file mode 100644 index 000000000000..66d3bf3176fe --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmOptionsListConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `AsmOptionsList` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `AsmOptionsList` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructAsmOptionsList(Raw::AsmOptionsList id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmOptionsListImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmOptionsListImpl.qll new file mode 100644 index 000000000000..112ead5d0b28 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmOptionsListImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmOptionsList`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmOptionsList + +/** + * INTERNAL: This module contains the customizable definition of `AsmOptionsList` and should not + * be referenced directly. + */ +module Impl { + class AsmOptionsList extends Generated::AsmOptionsList { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmPieceImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmPieceImpl.qll new file mode 100644 index 000000000000..1d0ccb27c71c --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmPieceImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmPiece`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmPiece + +/** + * INTERNAL: This module contains the customizable definition of `AsmPiece` and should not + * be referenced directly. + */ +module Impl { + class AsmPiece extends Generated::AsmPiece { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmRegOperandConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmRegOperandConstructor.qll new file mode 100644 index 000000000000..03d2556247d2 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmRegOperandConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `AsmRegOperand` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `AsmRegOperand` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructAsmRegOperand(Raw::AsmRegOperand id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmRegOperandImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmRegOperandImpl.qll new file mode 100644 index 000000000000..2641e12598c5 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmRegOperandImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmRegOperand`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmRegOperand + +/** + * INTERNAL: This module contains the customizable definition of `AsmRegOperand` and should not + * be referenced directly. + */ +module Impl { + class AsmRegOperand extends Generated::AsmRegOperand { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmRegSpecConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmRegSpecConstructor.qll new file mode 100644 index 000000000000..f35a995051e7 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmRegSpecConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `AsmRegSpec` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `AsmRegSpec` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructAsmRegSpec(Raw::AsmRegSpec id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmRegSpecImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmRegSpecImpl.qll new file mode 100644 index 000000000000..83b269eead64 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmRegSpecImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmRegSpec`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmRegSpec + +/** + * INTERNAL: This module contains the customizable definition of `AsmRegSpec` and should not + * be referenced directly. + */ +module Impl { + class AsmRegSpec extends Generated::AsmRegSpec { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmSymConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmSymConstructor.qll new file mode 100644 index 000000000000..e29466a12872 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmSymConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `AsmSym` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `AsmSym` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructAsmSym(Raw::AsmSym id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/AsmSymImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/AsmSymImpl.qll new file mode 100644 index 000000000000..9b26627dae9b --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/AsmSymImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `AsmSym`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.AsmSym + +/** + * INTERNAL: This module contains the customizable definition of `AsmSym` and should not + * be referenced directly. + */ +module Impl { + class AsmSym extends Generated::AsmSym { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/ParenthesizedArgListConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/ParenthesizedArgListConstructor.qll new file mode 100644 index 000000000000..13d0f66e63c0 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/ParenthesizedArgListConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `ParenthesizedArgList` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `ParenthesizedArgList` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructParenthesizedArgList(Raw::ParenthesizedArgList id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/ParenthesizedArgListImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/ParenthesizedArgListImpl.qll new file mode 100644 index 000000000000..ce1cc7e1b3da --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/ParenthesizedArgListImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `ParenthesizedArgList`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.ParenthesizedArgList + +/** + * INTERNAL: This module contains the customizable definition of `ParenthesizedArgList` and should not + * be referenced directly. + */ +module Impl { + class ParenthesizedArgList extends Generated::ParenthesizedArgList { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/UseBoundGenericArgImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/UseBoundGenericArgImpl.qll new file mode 100644 index 000000000000..11b3b81e3168 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/UseBoundGenericArgImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `UseBoundGenericArg`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.UseBoundGenericArg + +/** + * INTERNAL: This module contains the customizable definition of `UseBoundGenericArg` and should not + * be referenced directly. + */ +module Impl { + class UseBoundGenericArg extends Generated::UseBoundGenericArg { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/UseBoundGenericArgsConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/UseBoundGenericArgsConstructor.qll new file mode 100644 index 000000000000..7287445477f7 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/UseBoundGenericArgsConstructor.qll @@ -0,0 +1,14 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module defines the hook used internally to tweak the characteristic predicate of + * `UseBoundGenericArgs` synthesized instances. + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.Raw + +/** + * The characteristic predicate of `UseBoundGenericArgs` synthesized instances. + * INTERNAL: Do not use. + */ +predicate constructUseBoundGenericArgs(Raw::UseBoundGenericArgs id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/UseBoundGenericArgsImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/UseBoundGenericArgsImpl.qll new file mode 100644 index 000000000000..c2b158eeca06 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/UseBoundGenericArgsImpl.qll @@ -0,0 +1,16 @@ +// generated by codegen, remove this comment if you wish to edit this file +/** + * This module provides a hand-modifiable wrapper around the generated class `UseBoundGenericArgs`. + * + * INTERNAL: Do not use. + */ + +private import codeql.rust.elements.internal.generated.UseBoundGenericArgs + +/** + * INTERNAL: This module contains the customizable definition of `UseBoundGenericArgs` and should not + * be referenced directly. + */ +module Impl { + class UseBoundGenericArgs extends Generated::UseBoundGenericArgs { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/VariableImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/VariableImpl.qll index b21cf924204e..77087fa06463 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/VariableImpl.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/VariableImpl.qll @@ -177,7 +177,7 @@ module Impl { not p.hasQualifier() and ps = p.getPart() and not ps.hasGenericArgList() and - not ps.hasParamList() and + not ps.hasParenthesizedArgList() and not ps.hasPathType() and not ps.hasReturnTypeSyntax() and name_ = ps.getNameRef().getText() diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmClobberAbi.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmClobberAbi.qll new file mode 100644 index 000000000000..1c94b0accb3a --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmClobberAbi.qll @@ -0,0 +1,23 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmClobberAbi`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AsmPieceImpl::Impl as AsmPieceImpl + +/** + * INTERNAL: This module contains the fully generated definition of `AsmClobberAbi` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmClobberAbi` class directly. + * Use the subclass `AsmClobberAbi`, where the following predicates are available. + */ + class AsmClobberAbi extends Synth::TAsmClobberAbi, AsmPieceImpl::AsmPiece { + override string getAPrimaryQlClass() { result = "AsmClobberAbi" } + } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmConst.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmConst.qll new file mode 100644 index 000000000000..3b059400afe6 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmConst.qll @@ -0,0 +1,42 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmConst`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AsmOperandImpl::Impl as AsmOperandImpl +import codeql.rust.elements.Expr + +/** + * INTERNAL: This module contains the fully generated definition of `AsmConst` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmConst` class directly. + * Use the subclass `AsmConst`, where the following predicates are available. + */ + class AsmConst extends Synth::TAsmConst, AsmOperandImpl::AsmOperand { + override string getAPrimaryQlClass() { result = "AsmConst" } + + /** + * Gets the expression of this asm const, if it exists. + */ + Expr getExpr() { + result = + Synth::convertExprFromRaw(Synth::convertAsmConstToRaw(this).(Raw::AsmConst).getExpr()) + } + + /** + * Holds if `getExpr()` exists. + */ + final predicate hasExpr() { exists(this.getExpr()) } + + /** + * Holds if this asm const is const. + */ + predicate isConst() { Synth::convertAsmConstToRaw(this).(Raw::AsmConst).isConst() } + } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmDirSpec.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmDirSpec.qll new file mode 100644 index 000000000000..868248966e6a --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmDirSpec.qll @@ -0,0 +1,23 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmDirSpec`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl + +/** + * INTERNAL: This module contains the fully generated definition of `AsmDirSpec` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmDirSpec` class directly. + * Use the subclass `AsmDirSpec`, where the following predicates are available. + */ + class AsmDirSpec extends Synth::TAsmDirSpec, AstNodeImpl::AstNode { + override string getAPrimaryQlClass() { result = "AsmDirSpec" } + } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmExpr.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmExpr.qll index 0ab382232d7d..ac8e4d2c7239 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmExpr.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmExpr.qll @@ -6,6 +6,7 @@ private import codeql.rust.elements.internal.generated.Synth private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.AsmPiece import codeql.rust.elements.Attr import codeql.rust.elements.Expr import codeql.rust.elements.internal.ExprImpl::Impl as ExprImpl @@ -28,6 +29,26 @@ module Generated { class AsmExpr extends Synth::TAsmExpr, ExprImpl::Expr { override string getAPrimaryQlClass() { result = "AsmExpr" } + /** + * Gets the `index`th asm piece of this asm expression (0-based). + */ + AsmPiece getAsmPiece(int index) { + result = + Synth::convertAsmPieceFromRaw(Synth::convertAsmExprToRaw(this) + .(Raw::AsmExpr) + .getAsmPiece(index)) + } + + /** + * Gets any of the asm pieces of this asm expression. + */ + final AsmPiece getAnAsmPiece() { result = this.getAsmPiece(_) } + + /** + * Gets the number of asm pieces of this asm expression. + */ + final int getNumberOfAsmPieces() { result = count(int i | exists(this.getAsmPiece(i))) } + /** * Gets the `index`th attr of this asm expression (0-based). */ @@ -47,15 +68,21 @@ module Generated { final int getNumberOfAttrs() { result = count(int i | exists(this.getAttr(i))) } /** - * Gets the expression of this asm expression, if it exists. + * Gets the `index`th template of this asm expression (0-based). */ - Expr getExpr() { - result = Synth::convertExprFromRaw(Synth::convertAsmExprToRaw(this).(Raw::AsmExpr).getExpr()) + Expr getTemplate(int index) { + result = + Synth::convertExprFromRaw(Synth::convertAsmExprToRaw(this).(Raw::AsmExpr).getTemplate(index)) } /** - * Holds if `getExpr()` exists. + * Gets any of the templates of this asm expression. + */ + final Expr getATemplate() { result = this.getTemplate(_) } + + /** + * Gets the number of templates of this asm expression. */ - final predicate hasExpr() { exists(this.getExpr()) } + final int getNumberOfTemplates() { result = count(int i | exists(this.getTemplate(i))) } } } diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmLabel.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmLabel.qll new file mode 100644 index 000000000000..e327ccd38da4 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmLabel.qll @@ -0,0 +1,39 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmLabel`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AsmOperandImpl::Impl as AsmOperandImpl +import codeql.rust.elements.BlockExpr + +/** + * INTERNAL: This module contains the fully generated definition of `AsmLabel` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmLabel` class directly. + * Use the subclass `AsmLabel`, where the following predicates are available. + */ + class AsmLabel extends Synth::TAsmLabel, AsmOperandImpl::AsmOperand { + override string getAPrimaryQlClass() { result = "AsmLabel" } + + /** + * Gets the block expression of this asm label, if it exists. + */ + BlockExpr getBlockExpr() { + result = + Synth::convertBlockExprFromRaw(Synth::convertAsmLabelToRaw(this) + .(Raw::AsmLabel) + .getBlockExpr()) + } + + /** + * Holds if `getBlockExpr()` exists. + */ + final predicate hasBlockExpr() { exists(this.getBlockExpr()) } + } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOperand.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOperand.qll new file mode 100644 index 000000000000..1272045de5ff --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOperand.qll @@ -0,0 +1,21 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmOperand`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl + +/** + * INTERNAL: This module contains the fully generated definition of `AsmOperand` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmOperand` class directly. + * Use the subclass `AsmOperand`, where the following predicates are available. + */ + class AsmOperand extends Synth::TAsmOperand, AstNodeImpl::AstNode { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOperandExpr.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOperandExpr.qll new file mode 100644 index 000000000000..438b795b750e --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOperandExpr.qll @@ -0,0 +1,54 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmOperandExpr`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl +import codeql.rust.elements.Expr + +/** + * INTERNAL: This module contains the fully generated definition of `AsmOperandExpr` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmOperandExpr` class directly. + * Use the subclass `AsmOperandExpr`, where the following predicates are available. + */ + class AsmOperandExpr extends Synth::TAsmOperandExpr, AstNodeImpl::AstNode { + override string getAPrimaryQlClass() { result = "AsmOperandExpr" } + + /** + * Gets the in expression of this asm operand expression, if it exists. + */ + Expr getInExpr() { + result = + Synth::convertExprFromRaw(Synth::convertAsmOperandExprToRaw(this) + .(Raw::AsmOperandExpr) + .getInExpr()) + } + + /** + * Holds if `getInExpr()` exists. + */ + final predicate hasInExpr() { exists(this.getInExpr()) } + + /** + * Gets the out expression of this asm operand expression, if it exists. + */ + Expr getOutExpr() { + result = + Synth::convertExprFromRaw(Synth::convertAsmOperandExprToRaw(this) + .(Raw::AsmOperandExpr) + .getOutExpr()) + } + + /** + * Holds if `getOutExpr()` exists. + */ + final predicate hasOutExpr() { exists(this.getOutExpr()) } + } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOperandNamed.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOperandNamed.qll new file mode 100644 index 000000000000..bf370e972f92 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOperandNamed.qll @@ -0,0 +1,55 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmOperandNamed`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.AsmOperand +import codeql.rust.elements.internal.AsmPieceImpl::Impl as AsmPieceImpl +import codeql.rust.elements.Name + +/** + * INTERNAL: This module contains the fully generated definition of `AsmOperandNamed` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmOperandNamed` class directly. + * Use the subclass `AsmOperandNamed`, where the following predicates are available. + */ + class AsmOperandNamed extends Synth::TAsmOperandNamed, AsmPieceImpl::AsmPiece { + override string getAPrimaryQlClass() { result = "AsmOperandNamed" } + + /** + * Gets the asm operand of this asm operand named, if it exists. + */ + AsmOperand getAsmOperand() { + result = + Synth::convertAsmOperandFromRaw(Synth::convertAsmOperandNamedToRaw(this) + .(Raw::AsmOperandNamed) + .getAsmOperand()) + } + + /** + * Holds if `getAsmOperand()` exists. + */ + final predicate hasAsmOperand() { exists(this.getAsmOperand()) } + + /** + * Gets the name of this asm operand named, if it exists. + */ + Name getName() { + result = + Synth::convertNameFromRaw(Synth::convertAsmOperandNamedToRaw(this) + .(Raw::AsmOperandNamed) + .getName()) + } + + /** + * Holds if `getName()` exists. + */ + final predicate hasName() { exists(this.getName()) } + } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOption.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOption.qll new file mode 100644 index 000000000000..d226826bec05 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOption.qll @@ -0,0 +1,28 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmOption`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl + +/** + * INTERNAL: This module contains the fully generated definition of `AsmOption` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmOption` class directly. + * Use the subclass `AsmOption`, where the following predicates are available. + */ + class AsmOption extends Synth::TAsmOption, AstNodeImpl::AstNode { + override string getAPrimaryQlClass() { result = "AsmOption" } + + /** + * Holds if this asm option is raw. + */ + predicate isRaw() { Synth::convertAsmOptionToRaw(this).(Raw::AsmOption).isRaw() } + } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOptionsList.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOptionsList.qll new file mode 100644 index 000000000000..ba21b8400141 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmOptionsList.qll @@ -0,0 +1,44 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmOptionsList`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.AsmOption +import codeql.rust.elements.internal.AsmPieceImpl::Impl as AsmPieceImpl + +/** + * INTERNAL: This module contains the fully generated definition of `AsmOptionsList` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmOptionsList` class directly. + * Use the subclass `AsmOptionsList`, where the following predicates are available. + */ + class AsmOptionsList extends Synth::TAsmOptionsList, AsmPieceImpl::AsmPiece { + override string getAPrimaryQlClass() { result = "AsmOptionsList" } + + /** + * Gets the `index`th asm option of this asm options list (0-based). + */ + AsmOption getAsmOption(int index) { + result = + Synth::convertAsmOptionFromRaw(Synth::convertAsmOptionsListToRaw(this) + .(Raw::AsmOptionsList) + .getAsmOption(index)) + } + + /** + * Gets any of the asm options of this asm options list. + */ + final AsmOption getAnAsmOption() { result = this.getAsmOption(_) } + + /** + * Gets the number of asm options of this asm options list. + */ + final int getNumberOfAsmOptions() { result = count(int i | exists(this.getAsmOption(i))) } + } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmPiece.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmPiece.qll new file mode 100644 index 000000000000..6e697caaf3d8 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmPiece.qll @@ -0,0 +1,21 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmPiece`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl + +/** + * INTERNAL: This module contains the fully generated definition of `AsmPiece` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmPiece` class directly. + * Use the subclass `AsmPiece`, where the following predicates are available. + */ + class AsmPiece extends Synth::TAsmPiece, AstNodeImpl::AstNode { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmRegOperand.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmRegOperand.qll new file mode 100644 index 000000000000..39516e748fd7 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmRegOperand.qll @@ -0,0 +1,71 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmRegOperand`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.AsmDirSpec +import codeql.rust.elements.AsmOperandExpr +import codeql.rust.elements.internal.AsmOperandImpl::Impl as AsmOperandImpl +import codeql.rust.elements.AsmRegSpec + +/** + * INTERNAL: This module contains the fully generated definition of `AsmRegOperand` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmRegOperand` class directly. + * Use the subclass `AsmRegOperand`, where the following predicates are available. + */ + class AsmRegOperand extends Synth::TAsmRegOperand, AsmOperandImpl::AsmOperand { + override string getAPrimaryQlClass() { result = "AsmRegOperand" } + + /** + * Gets the asm dir spec of this asm reg operand, if it exists. + */ + AsmDirSpec getAsmDirSpec() { + result = + Synth::convertAsmDirSpecFromRaw(Synth::convertAsmRegOperandToRaw(this) + .(Raw::AsmRegOperand) + .getAsmDirSpec()) + } + + /** + * Holds if `getAsmDirSpec()` exists. + */ + final predicate hasAsmDirSpec() { exists(this.getAsmDirSpec()) } + + /** + * Gets the asm operand expression of this asm reg operand, if it exists. + */ + AsmOperandExpr getAsmOperandExpr() { + result = + Synth::convertAsmOperandExprFromRaw(Synth::convertAsmRegOperandToRaw(this) + .(Raw::AsmRegOperand) + .getAsmOperandExpr()) + } + + /** + * Holds if `getAsmOperandExpr()` exists. + */ + final predicate hasAsmOperandExpr() { exists(this.getAsmOperandExpr()) } + + /** + * Gets the asm reg spec of this asm reg operand, if it exists. + */ + AsmRegSpec getAsmRegSpec() { + result = + Synth::convertAsmRegSpecFromRaw(Synth::convertAsmRegOperandToRaw(this) + .(Raw::AsmRegOperand) + .getAsmRegSpec()) + } + + /** + * Holds if `getAsmRegSpec()` exists. + */ + final predicate hasAsmRegSpec() { exists(this.getAsmRegSpec()) } + } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmRegSpec.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmRegSpec.qll new file mode 100644 index 000000000000..2d02e28375fe --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmRegSpec.qll @@ -0,0 +1,39 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmRegSpec`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl +import codeql.rust.elements.NameRef + +/** + * INTERNAL: This module contains the fully generated definition of `AsmRegSpec` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmRegSpec` class directly. + * Use the subclass `AsmRegSpec`, where the following predicates are available. + */ + class AsmRegSpec extends Synth::TAsmRegSpec, AstNodeImpl::AstNode { + override string getAPrimaryQlClass() { result = "AsmRegSpec" } + + /** + * Gets the name reference of this asm reg spec, if it exists. + */ + NameRef getNameRef() { + result = + Synth::convertNameRefFromRaw(Synth::convertAsmRegSpecToRaw(this) + .(Raw::AsmRegSpec) + .getNameRef()) + } + + /** + * Holds if `getNameRef()` exists. + */ + final predicate hasNameRef() { exists(this.getNameRef()) } + } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/AsmSym.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmSym.qll new file mode 100644 index 000000000000..bc5800a093f7 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/AsmSym.qll @@ -0,0 +1,36 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `AsmSym`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AsmOperandImpl::Impl as AsmOperandImpl +import codeql.rust.elements.Path + +/** + * INTERNAL: This module contains the fully generated definition of `AsmSym` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::AsmSym` class directly. + * Use the subclass `AsmSym`, where the following predicates are available. + */ + class AsmSym extends Synth::TAsmSym, AsmOperandImpl::AsmOperand { + override string getAPrimaryQlClass() { result = "AsmSym" } + + /** + * Gets the path of this asm sym, if it exists. + */ + Path getPath() { + result = Synth::convertPathFromRaw(Synth::convertAsmSymToRaw(this).(Raw::AsmSym).getPath()) + } + + /** + * Holds if `getPath()` exists. + */ + final predicate hasPath() { exists(this.getPath()) } + } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/Lifetime.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/Lifetime.qll index 2830b84d4065..2819e6fc4038 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/Lifetime.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/Lifetime.qll @@ -6,7 +6,7 @@ private import codeql.rust.elements.internal.generated.Synth private import codeql.rust.elements.internal.generated.Raw -import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl +import codeql.rust.elements.internal.UseBoundGenericArgImpl::Impl as UseBoundGenericArgImpl /** * INTERNAL: This module contains the fully generated definition of `Lifetime` and should not @@ -21,7 +21,7 @@ module Generated { * INTERNAL: Do not reference the `Generated::Lifetime` class directly. * Use the subclass `Lifetime`, where the following predicates are available. */ - class Lifetime extends Synth::TLifetime, AstNodeImpl::AstNode { + class Lifetime extends Synth::TLifetime, UseBoundGenericArgImpl::UseBoundGenericArg { override string getAPrimaryQlClass() { result = "Lifetime" } /** diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/NameRef.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/NameRef.qll index ae05f5a06211..bf690fae0a46 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/NameRef.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/NameRef.qll @@ -6,7 +6,7 @@ private import codeql.rust.elements.internal.generated.Synth private import codeql.rust.elements.internal.generated.Raw -import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl +import codeql.rust.elements.internal.UseBoundGenericArgImpl::Impl as UseBoundGenericArgImpl /** * INTERNAL: This module contains the fully generated definition of `NameRef` and should not @@ -21,7 +21,7 @@ module Generated { * INTERNAL: Do not reference the `Generated::NameRef` class directly. * Use the subclass `NameRef`, where the following predicates are available. */ - class NameRef extends Synth::TNameRef, AstNodeImpl::AstNode { + class NameRef extends Synth::TNameRef, UseBoundGenericArgImpl::UseBoundGenericArg { override string getAPrimaryQlClass() { result = "NameRef" } /** diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/ParentChild.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/ParentChild.qll index 23b464bb895e..f2f2f41ae38f 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/ParentChild.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/ParentChild.qll @@ -177,6 +177,95 @@ private module Impl { ) } + private Element getImmediateChildOfAsmDirSpec(AsmDirSpec e, int index, string partialPredicateCall) { + exists(int b, int bAstNode, int n | + b = 0 and + bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and + n = bAstNode and + ( + none() + or + result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall) + ) + ) + } + + private Element getImmediateChildOfAsmOperand(AsmOperand e, int index, string partialPredicateCall) { + exists(int b, int bAstNode, int n | + b = 0 and + bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and + n = bAstNode and + ( + none() + or + result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall) + ) + ) + } + + private Element getImmediateChildOfAsmOperandExpr( + AsmOperandExpr e, int index, string partialPredicateCall + ) { + exists(int b, int bAstNode, int n, int nInExpr, int nOutExpr | + b = 0 and + bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and + n = bAstNode and + nInExpr = n + 1 and + nOutExpr = nInExpr + 1 and + ( + none() + or + result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall) + or + index = n and result = e.getInExpr() and partialPredicateCall = "InExpr()" + or + index = nInExpr and result = e.getOutExpr() and partialPredicateCall = "OutExpr()" + ) + ) + } + + private Element getImmediateChildOfAsmOption(AsmOption e, int index, string partialPredicateCall) { + exists(int b, int bAstNode, int n | + b = 0 and + bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and + n = bAstNode and + ( + none() + or + result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall) + ) + ) + } + + private Element getImmediateChildOfAsmPiece(AsmPiece e, int index, string partialPredicateCall) { + exists(int b, int bAstNode, int n | + b = 0 and + bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and + n = bAstNode and + ( + none() + or + result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall) + ) + ) + } + + private Element getImmediateChildOfAsmRegSpec(AsmRegSpec e, int index, string partialPredicateCall) { + exists(int b, int bAstNode, int n, int nNameRef | + b = 0 and + bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and + n = bAstNode and + nNameRef = n + 1 and + ( + none() + or + result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall) + or + index = n and result = e.getNameRef() and partialPredicateCall = "NameRef()" + ) + ) + } + private Element getImmediateChildOfAssocItem(AssocItem e, int index, string partialPredicateCall) { exists(int b, int bAstNode, int n | b = 0 and @@ -471,19 +560,6 @@ private module Impl { ) } - private Element getImmediateChildOfLifetime(Lifetime e, int index, string partialPredicateCall) { - exists(int b, int bAstNode, int n | - b = 0 and - bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and - n = bAstNode and - ( - none() - or - result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall) - ) - ) - } - private Element getImmediateChildOfMacroItems(MacroItems e, int index, string partialPredicateCall) { exists(int b, int bAstNode, int n, int nItem | b = 0 and @@ -621,19 +697,6 @@ private module Impl { ) } - private Element getImmediateChildOfNameRef(NameRef e, int index, string partialPredicateCall) { - exists(int b, int bAstNode, int n | - b = 0 and - bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and - n = bAstNode and - ( - none() - or - result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall) - ) - ) - } - private Element getImmediateChildOfParamBase(ParamBase e, int index, string partialPredicateCall) { exists(int b, int bAstNode, int n, int nAttr, int nTypeRepr | b = 0 and @@ -674,6 +737,25 @@ private module Impl { ) } + private Element getImmediateChildOfParenthesizedArgList( + ParenthesizedArgList e, int index, string partialPredicateCall + ) { + exists(int b, int bAstNode, int n, int nTypeArg | + b = 0 and + bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and + n = bAstNode and + nTypeArg = n + 1 + max(int i | i = -1 or exists(e.getTypeArg(i)) | i) and + ( + none() + or + result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall) + or + result = e.getTypeArg(index - n) and + partialPredicateCall = "TypeArg(" + (index - n).toString() + ")" + ) + ) + } + private Element getImmediateChildOfPat(Pat e, int index, string partialPredicateCall) { exists(int b, int bAstNode, int n | b = 0 and @@ -710,16 +792,16 @@ private module Impl { PathSegment e, int index, string partialPredicateCall ) { exists( - int b, int bAstNode, int n, int nGenericArgList, int nNameRef, int nParamList, int nPathType, - int nRetType, int nReturnTypeSyntax, int nTypeRepr + int b, int bAstNode, int n, int nGenericArgList, int nNameRef, int nParenthesizedArgList, + int nPathType, int nRetType, int nReturnTypeSyntax, int nTypeRepr | b = 0 and bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and n = bAstNode and nGenericArgList = n + 1 and nNameRef = nGenericArgList + 1 and - nParamList = nNameRef + 1 and - nPathType = nParamList + 1 and + nParenthesizedArgList = nNameRef + 1 and + nPathType = nParenthesizedArgList + 1 and nRetType = nPathType + 1 and nReturnTypeSyntax = nRetType + 1 and nTypeRepr = nReturnTypeSyntax + 1 and @@ -732,9 +814,13 @@ private module Impl { or index = nGenericArgList and result = e.getNameRef() and partialPredicateCall = "NameRef()" or - index = nNameRef and result = e.getParamList() and partialPredicateCall = "ParamList()" + index = nNameRef and + result = e.getParenthesizedArgList() and + partialPredicateCall = "ParenthesizedArgList()" or - index = nParamList and result = e.getPathType() and partialPredicateCall = "PathType()" + index = nParenthesizedArgList and + result = e.getPathType() and + partialPredicateCall = "PathType()" or index = nPathType and result = e.getRetType() and partialPredicateCall = "RetType()" or @@ -1045,27 +1131,25 @@ private module Impl { } private Element getImmediateChildOfTypeBound(TypeBound e, int index, string partialPredicateCall) { - exists(int b, int bAstNode, int n, int nGenericParamList, int nLifetime, int nTypeRepr | + exists(int b, int bAstNode, int n, int nLifetime, int nTypeRepr, int nUseBoundGenericArgs | b = 0 and bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and n = bAstNode and - nGenericParamList = n + 1 and - nLifetime = nGenericParamList + 1 and + nLifetime = n + 1 and nTypeRepr = nLifetime + 1 and + nUseBoundGenericArgs = nTypeRepr + 1 and ( none() or result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall) or - index = n and - result = e.getGenericParamList() and - partialPredicateCall = "GenericParamList()" - or - index = nGenericParamList and - result = e.getLifetime() and - partialPredicateCall = "Lifetime()" + index = n and result = e.getLifetime() and partialPredicateCall = "Lifetime()" or index = nLifetime and result = e.getTypeRepr() and partialPredicateCall = "TypeRepr()" + or + index = nTypeRepr and + result = e.getUseBoundGenericArgs() and + partialPredicateCall = "UseBoundGenericArgs()" ) ) } @@ -1102,6 +1186,40 @@ private module Impl { ) } + private Element getImmediateChildOfUseBoundGenericArg( + UseBoundGenericArg e, int index, string partialPredicateCall + ) { + exists(int b, int bAstNode, int n | + b = 0 and + bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and + n = bAstNode and + ( + none() + or + result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall) + ) + ) + } + + private Element getImmediateChildOfUseBoundGenericArgs( + UseBoundGenericArgs e, int index, string partialPredicateCall + ) { + exists(int b, int bAstNode, int n, int nUseBoundGenericArg | + b = 0 and + bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and + n = bAstNode and + nUseBoundGenericArg = n + 1 + max(int i | i = -1 or exists(e.getUseBoundGenericArg(i)) | i) and + ( + none() + or + result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall) + or + result = e.getUseBoundGenericArg(index - n) and + partialPredicateCall = "UseBoundGenericArg(" + (index - n).toString() + ")" + ) + ) + } + private Element getImmediateChildOfUseTree(UseTree e, int index, string partialPredicateCall) { exists(int b, int bAstNode, int n, int nPath, int nRename, int nUseTreeList | b = 0 and @@ -1298,22 +1416,162 @@ private module Impl { ) } + private Element getImmediateChildOfAsmClobberAbi( + AsmClobberAbi e, int index, string partialPredicateCall + ) { + exists(int b, int bAsmPiece, int n | + b = 0 and + bAsmPiece = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAsmPiece(e, i, _)) | i) and + n = bAsmPiece and + ( + none() + or + result = getImmediateChildOfAsmPiece(e, index - b, partialPredicateCall) + ) + ) + } + + private Element getImmediateChildOfAsmConst(AsmConst e, int index, string partialPredicateCall) { + exists(int b, int bAsmOperand, int n, int nExpr | + b = 0 and + bAsmOperand = + b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAsmOperand(e, i, _)) | i) and + n = bAsmOperand and + nExpr = n + 1 and + ( + none() + or + result = getImmediateChildOfAsmOperand(e, index - b, partialPredicateCall) + or + index = n and result = e.getExpr() and partialPredicateCall = "Expr()" + ) + ) + } + private Element getImmediateChildOfAsmExpr(AsmExpr e, int index, string partialPredicateCall) { - exists(int b, int bExpr, int n, int nAttr, int nExpr | + exists(int b, int bExpr, int n, int nAsmPiece, int nAttr, int nTemplate | b = 0 and bExpr = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfExpr(e, i, _)) | i) and n = bExpr and - nAttr = n + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and - nExpr = nAttr + 1 and + nAsmPiece = n + 1 + max(int i | i = -1 or exists(e.getAsmPiece(i)) | i) and + nAttr = nAsmPiece + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and + nTemplate = nAttr + 1 + max(int i | i = -1 or exists(e.getTemplate(i)) | i) and ( none() or result = getImmediateChildOfExpr(e, index - b, partialPredicateCall) or - result = e.getAttr(index - n) and - partialPredicateCall = "Attr(" + (index - n).toString() + ")" + result = e.getAsmPiece(index - n) and + partialPredicateCall = "AsmPiece(" + (index - n).toString() + ")" or - index = nAttr and result = e.getExpr() and partialPredicateCall = "Expr()" + result = e.getAttr(index - nAsmPiece) and + partialPredicateCall = "Attr(" + (index - nAsmPiece).toString() + ")" + or + result = e.getTemplate(index - nAttr) and + partialPredicateCall = "Template(" + (index - nAttr).toString() + ")" + ) + ) + } + + private Element getImmediateChildOfAsmLabel(AsmLabel e, int index, string partialPredicateCall) { + exists(int b, int bAsmOperand, int n, int nBlockExpr | + b = 0 and + bAsmOperand = + b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAsmOperand(e, i, _)) | i) and + n = bAsmOperand and + nBlockExpr = n + 1 and + ( + none() + or + result = getImmediateChildOfAsmOperand(e, index - b, partialPredicateCall) + or + index = n and result = e.getBlockExpr() and partialPredicateCall = "BlockExpr()" + ) + ) + } + + private Element getImmediateChildOfAsmOperandNamed( + AsmOperandNamed e, int index, string partialPredicateCall + ) { + exists(int b, int bAsmPiece, int n, int nAsmOperand, int nName | + b = 0 and + bAsmPiece = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAsmPiece(e, i, _)) | i) and + n = bAsmPiece and + nAsmOperand = n + 1 and + nName = nAsmOperand + 1 and + ( + none() + or + result = getImmediateChildOfAsmPiece(e, index - b, partialPredicateCall) + or + index = n and result = e.getAsmOperand() and partialPredicateCall = "AsmOperand()" + or + index = nAsmOperand and result = e.getName() and partialPredicateCall = "Name()" + ) + ) + } + + private Element getImmediateChildOfAsmOptionsList( + AsmOptionsList e, int index, string partialPredicateCall + ) { + exists(int b, int bAsmPiece, int n, int nAsmOption | + b = 0 and + bAsmPiece = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAsmPiece(e, i, _)) | i) and + n = bAsmPiece and + nAsmOption = n + 1 + max(int i | i = -1 or exists(e.getAsmOption(i)) | i) and + ( + none() + or + result = getImmediateChildOfAsmPiece(e, index - b, partialPredicateCall) + or + result = e.getAsmOption(index - n) and + partialPredicateCall = "AsmOption(" + (index - n).toString() + ")" + ) + ) + } + + private Element getImmediateChildOfAsmRegOperand( + AsmRegOperand e, int index, string partialPredicateCall + ) { + exists(int b, int bAsmOperand, int n, int nAsmDirSpec, int nAsmOperandExpr, int nAsmRegSpec | + b = 0 and + bAsmOperand = + b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAsmOperand(e, i, _)) | i) and + n = bAsmOperand and + nAsmDirSpec = n + 1 and + nAsmOperandExpr = nAsmDirSpec + 1 and + nAsmRegSpec = nAsmOperandExpr + 1 and + ( + none() + or + result = getImmediateChildOfAsmOperand(e, index - b, partialPredicateCall) + or + index = n and result = e.getAsmDirSpec() and partialPredicateCall = "AsmDirSpec()" + or + index = nAsmDirSpec and + result = e.getAsmOperandExpr() and + partialPredicateCall = "AsmOperandExpr()" + or + index = nAsmOperandExpr and + result = e.getAsmRegSpec() and + partialPredicateCall = "AsmRegSpec()" + ) + ) + } + + private Element getImmediateChildOfAsmSym(AsmSym e, int index, string partialPredicateCall) { + exists(int b, int bAsmOperand, int n, int nPath | + b = 0 and + bAsmOperand = + b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAsmOperand(e, i, _)) | i) and + n = bAsmOperand and + nPath = n + 1 and + ( + none() + or + result = getImmediateChildOfAsmOperand(e, index - b, partialPredicateCall) + or + index = n and result = e.getPath() and partialPredicateCall = "Path()" ) ) } @@ -1971,6 +2229,20 @@ private module Impl { ) } + private Element getImmediateChildOfLifetime(Lifetime e, int index, string partialPredicateCall) { + exists(int b, int bUseBoundGenericArg, int n | + b = 0 and + bUseBoundGenericArg = + b + 1 + max(int i | i = -1 or exists(getImmediateChildOfUseBoundGenericArg(e, i, _)) | i) and + n = bUseBoundGenericArg and + ( + none() + or + result = getImmediateChildOfUseBoundGenericArg(e, index - b, partialPredicateCall) + ) + ) + } + private Element getImmediateChildOfLifetimeArg( LifetimeArg e, int index, string partialPredicateCall ) { @@ -2128,6 +2400,20 @@ private module Impl { ) } + private Element getImmediateChildOfNameRef(NameRef e, int index, string partialPredicateCall) { + exists(int b, int bUseBoundGenericArg, int n | + b = 0 and + bUseBoundGenericArg = + b + 1 + max(int i | i = -1 or exists(getImmediateChildOfUseBoundGenericArg(e, i, _)) | i) and + n = bUseBoundGenericArg and + ( + none() + or + result = getImmediateChildOfUseBoundGenericArg(e, index - b, partialPredicateCall) + ) + ) + } + private Element getImmediateChildOfNeverTypeRepr( NeverTypeRepr e, int index, string partialPredicateCall ) { @@ -3759,6 +4045,14 @@ private module Impl { or result = getImmediateChildOfArgList(e, index, partialAccessor) or + result = getImmediateChildOfAsmDirSpec(e, index, partialAccessor) + or + result = getImmediateChildOfAsmOperandExpr(e, index, partialAccessor) + or + result = getImmediateChildOfAsmOption(e, index, partialAccessor) + or + result = getImmediateChildOfAsmRegSpec(e, index, partialAccessor) + or result = getImmediateChildOfAssocItemList(e, index, partialAccessor) or result = getImmediateChildOfAttr(e, index, partialAccessor) @@ -3779,8 +4073,6 @@ private module Impl { or result = getImmediateChildOfLetElse(e, index, partialAccessor) or - result = getImmediateChildOfLifetime(e, index, partialAccessor) - or result = getImmediateChildOfMacroItems(e, index, partialAccessor) or result = getImmediateChildOfMacroStmts(e, index, partialAccessor) @@ -3795,10 +4087,10 @@ private module Impl { or result = getImmediateChildOfName(e, index, partialAccessor) or - result = getImmediateChildOfNameRef(e, index, partialAccessor) - or result = getImmediateChildOfParamList(e, index, partialAccessor) or + result = getImmediateChildOfParenthesizedArgList(e, index, partialAccessor) + or result = getImmediateChildOfPath(e, index, partialAccessor) or result = getImmediateChildOfPathSegment(e, index, partialAccessor) @@ -3831,6 +4123,8 @@ private module Impl { or result = getImmediateChildOfTypeBoundList(e, index, partialAccessor) or + result = getImmediateChildOfUseBoundGenericArgs(e, index, partialAccessor) + or result = getImmediateChildOfUseTree(e, index, partialAccessor) or result = getImmediateChildOfUseTreeList(e, index, partialAccessor) @@ -3847,8 +4141,22 @@ private module Impl { or result = getImmediateChildOfArrayTypeRepr(e, index, partialAccessor) or + result = getImmediateChildOfAsmClobberAbi(e, index, partialAccessor) + or + result = getImmediateChildOfAsmConst(e, index, partialAccessor) + or result = getImmediateChildOfAsmExpr(e, index, partialAccessor) or + result = getImmediateChildOfAsmLabel(e, index, partialAccessor) + or + result = getImmediateChildOfAsmOperandNamed(e, index, partialAccessor) + or + result = getImmediateChildOfAsmOptionsList(e, index, partialAccessor) + or + result = getImmediateChildOfAsmRegOperand(e, index, partialAccessor) + or + result = getImmediateChildOfAsmSym(e, index, partialAccessor) + or result = getImmediateChildOfAssocTypeArg(e, index, partialAccessor) or result = getImmediateChildOfAwaitExpr(e, index, partialAccessor) @@ -3901,6 +4209,8 @@ private module Impl { or result = getImmediateChildOfLetStmt(e, index, partialAccessor) or + result = getImmediateChildOfLifetime(e, index, partialAccessor) + or result = getImmediateChildOfLifetimeArg(e, index, partialAccessor) or result = getImmediateChildOfLifetimeParam(e, index, partialAccessor) @@ -3917,6 +4227,8 @@ private module Impl { or result = getImmediateChildOfMatchExpr(e, index, partialAccessor) or + result = getImmediateChildOfNameRef(e, index, partialAccessor) + or result = getImmediateChildOfNeverTypeRepr(e, index, partialAccessor) or result = getImmediateChildOfOffsetOfExpr(e, index, partialAccessor) diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/ParenthesizedArgList.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/ParenthesizedArgList.qll new file mode 100644 index 000000000000..24c4fd531ec0 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/ParenthesizedArgList.qll @@ -0,0 +1,44 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `ParenthesizedArgList`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl +import codeql.rust.elements.TypeArg + +/** + * INTERNAL: This module contains the fully generated definition of `ParenthesizedArgList` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::ParenthesizedArgList` class directly. + * Use the subclass `ParenthesizedArgList`, where the following predicates are available. + */ + class ParenthesizedArgList extends Synth::TParenthesizedArgList, AstNodeImpl::AstNode { + override string getAPrimaryQlClass() { result = "ParenthesizedArgList" } + + /** + * Gets the `index`th type argument of this parenthesized argument list (0-based). + */ + TypeArg getTypeArg(int index) { + result = + Synth::convertTypeArgFromRaw(Synth::convertParenthesizedArgListToRaw(this) + .(Raw::ParenthesizedArgList) + .getTypeArg(index)) + } + + /** + * Gets any of the type arguments of this parenthesized argument list. + */ + final TypeArg getATypeArg() { result = this.getTypeArg(_) } + + /** + * Gets the number of type arguments of this parenthesized argument list. + */ + final int getNumberOfTypeArgs() { result = count(int i | exists(this.getTypeArg(i))) } + } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/PathSegment.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/PathSegment.qll index ada03f52345a..fdae9afbc84a 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/PathSegment.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/PathSegment.qll @@ -9,7 +9,7 @@ private import codeql.rust.elements.internal.generated.Raw import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl import codeql.rust.elements.GenericArgList import codeql.rust.elements.NameRef -import codeql.rust.elements.ParamList +import codeql.rust.elements.ParenthesizedArgList import codeql.rust.elements.PathTypeRepr import codeql.rust.elements.RetTypeRepr import codeql.rust.elements.ReturnTypeSyntax @@ -59,19 +59,19 @@ module Generated { final predicate hasNameRef() { exists(this.getNameRef()) } /** - * Gets the parameter list of this path segment, if it exists. + * Gets the parenthesized argument list of this path segment, if it exists. */ - ParamList getParamList() { + ParenthesizedArgList getParenthesizedArgList() { result = - Synth::convertParamListFromRaw(Synth::convertPathSegmentToRaw(this) + Synth::convertParenthesizedArgListFromRaw(Synth::convertPathSegmentToRaw(this) .(Raw::PathSegment) - .getParamList()) + .getParenthesizedArgList()) } /** - * Holds if `getParamList()` exists. + * Holds if `getParenthesizedArgList()` exists. */ - final predicate hasParamList() { exists(this.getParamList()) } + final predicate hasParenthesizedArgList() { exists(this.getParenthesizedArgList()) } /** * Gets the path type of this path segment, if it exists. 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 c6ee20a4dc4b..63c6c0f7054f 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/Raw.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/Raw.qll @@ -125,6 +125,64 @@ module Raw { Expr getArg(int index) { arg_list_args(this, index, result) } } + /** + * INTERNAL: Do not use. + */ + class AsmDirSpec extends @asm_dir_spec, AstNode { + override string toString() { result = "AsmDirSpec" } + } + + /** + * INTERNAL: Do not use. + */ + class AsmOperand extends @asm_operand, AstNode { } + + /** + * INTERNAL: Do not use. + */ + class AsmOperandExpr extends @asm_operand_expr, AstNode { + override string toString() { result = "AsmOperandExpr" } + + /** + * Gets the in expression of this asm operand expression, if it exists. + */ + Expr getInExpr() { asm_operand_expr_in_exprs(this, result) } + + /** + * Gets the out expression of this asm operand expression, if it exists. + */ + Expr getOutExpr() { asm_operand_expr_out_exprs(this, result) } + } + + /** + * INTERNAL: Do not use. + */ + class AsmOption extends @asm_option, AstNode { + override string toString() { result = "AsmOption" } + + /** + * Holds if this asm option is raw. + */ + predicate isRaw() { asm_option_is_raw(this) } + } + + /** + * INTERNAL: Do not use. + */ + class AsmPiece extends @asm_piece, AstNode { } + + /** + * INTERNAL: Do not use. + */ + class AsmRegSpec extends @asm_reg_spec, AstNode { + override string toString() { result = "AsmRegSpec" } + + /** + * Gets the name reference of this asm reg spec, if it exists. + */ + NameRef getNameRef() { asm_reg_spec_name_refs(this, result) } + } + /** * INTERNAL: Do not use. * A AssocItem. For example: @@ -374,22 +432,6 @@ module Raw { BlockExpr getBlockExpr() { let_else_block_exprs(this, result) } } - /** - * INTERNAL: Do not use. - * A Lifetime. For example: - * ```rust - * todo!() - * ``` - */ - class Lifetime extends @lifetime, AstNode { - override string toString() { result = "Lifetime" } - - /** - * Gets the text of this lifetime, if it exists. - */ - string getText() { lifetime_texts(this, result) } - } - /** * INTERNAL: Do not use. * A sequence of items generated by a `MacroCall`. For example: @@ -555,22 +597,6 @@ module Raw { string getText() { name_texts(this, result) } } - /** - * INTERNAL: Do not use. - * A NameRef. For example: - * ```rust - * todo!() - * ``` - */ - class NameRef extends @name_ref, AstNode { - override string toString() { result = "NameRef" } - - /** - * Gets the text of this name reference, if it exists. - */ - string getText() { name_ref_texts(this, result) } - } - /** * INTERNAL: Do not use. * A normal parameter, `Param`, or a self parameter `SelfParam`. @@ -608,6 +634,18 @@ module Raw { SelfParam getSelfParam() { param_list_self_params(this, result) } } + /** + * INTERNAL: Do not use. + */ + class ParenthesizedArgList extends @parenthesized_arg_list, AstNode { + override string toString() { result = "ParenthesizedArgList" } + + /** + * Gets the `index`th type argument of this parenthesized argument list (0-based). + */ + TypeArg getTypeArg(int index) { parenthesized_arg_list_type_args(this, index, result) } + } + /** * INTERNAL: Do not use. * The base class for patterns. @@ -654,9 +692,11 @@ module Raw { NameRef getNameRef() { path_segment_name_refs(this, result) } /** - * Gets the parameter list of this path segment, if it exists. + * Gets the parenthesized argument list of this path segment, if it exists. */ - ParamList getParamList() { path_segment_param_lists(this, result) } + ParenthesizedArgList getParenthesizedArgList() { + path_segment_parenthesized_arg_lists(this, result) + } /** * Gets the path type of this path segment, if it exists. @@ -974,11 +1014,6 @@ module Raw { class TypeBound extends @type_bound, AstNode { override string toString() { result = "TypeBound" } - /** - * Gets the generic parameter list of this type bound, if it exists. - */ - GenericParamList getGenericParamList() { type_bound_generic_param_lists(this, result) } - /** * Holds if this type bound is async. */ @@ -998,6 +1033,11 @@ module Raw { * Gets the type representation of this type bound, if it exists. */ TypeRepr getTypeRepr() { type_bound_type_reprs(this, result) } + + /** + * Gets the use bound generic arguments of this type bound, if it exists. + */ + UseBoundGenericArgs getUseBoundGenericArgs() { type_bound_use_bound_generic_args(this, result) } } /** @@ -1027,6 +1067,25 @@ module Raw { */ class TypeRepr extends @type_repr, AstNode { } + /** + * INTERNAL: Do not use. + */ + class UseBoundGenericArg extends @use_bound_generic_arg, AstNode { } + + /** + * INTERNAL: Do not use. + */ + class UseBoundGenericArgs extends @use_bound_generic_args, AstNode { + override string toString() { result = "UseBoundGenericArgs" } + + /** + * Gets the `index`th use bound generic argument of this use bound generic arguments (0-based). + */ + UseBoundGenericArg getUseBoundGenericArg(int index) { + use_bound_generic_args_use_bound_generic_args(this, index, result) + } + } + /** * INTERNAL: Do not use. * A UseTree. For example: @@ -1191,6 +1250,30 @@ module Raw { TypeRepr getElementTypeRepr() { array_type_repr_element_type_reprs(this, result) } } + /** + * INTERNAL: Do not use. + */ + class AsmClobberAbi extends @asm_clobber_abi, AsmPiece { + override string toString() { result = "AsmClobberAbi" } + } + + /** + * INTERNAL: Do not use. + */ + class AsmConst extends @asm_const, AsmOperand { + override string toString() { result = "AsmConst" } + + /** + * Gets the expression of this asm const, if it exists. + */ + Expr getExpr() { asm_const_exprs(this, result) } + + /** + * Holds if this asm const is const. + */ + predicate isConst() { asm_const_is_const(this) } + } + /** * INTERNAL: Do not use. * An inline assembly expression. For example: @@ -1203,15 +1286,95 @@ module Raw { class AsmExpr extends @asm_expr, Expr { override string toString() { result = "AsmExpr" } + /** + * Gets the `index`th asm piece of this asm expression (0-based). + */ + AsmPiece getAsmPiece(int index) { asm_expr_asm_pieces(this, index, result) } + /** * Gets the `index`th attr of this asm expression (0-based). */ Attr getAttr(int index) { asm_expr_attrs(this, index, result) } /** - * Gets the expression of this asm expression, if it exists. + * Gets the `index`th template of this asm expression (0-based). + */ + Expr getTemplate(int index) { asm_expr_templates(this, index, result) } + } + + /** + * INTERNAL: Do not use. + */ + class AsmLabel extends @asm_label, AsmOperand { + override string toString() { result = "AsmLabel" } + + /** + * Gets the block expression of this asm label, if it exists. */ - Expr getExpr() { asm_expr_exprs(this, result) } + BlockExpr getBlockExpr() { asm_label_block_exprs(this, result) } + } + + /** + * INTERNAL: Do not use. + */ + class AsmOperandNamed extends @asm_operand_named, AsmPiece { + override string toString() { result = "AsmOperandNamed" } + + /** + * Gets the asm operand of this asm operand named, if it exists. + */ + AsmOperand getAsmOperand() { asm_operand_named_asm_operands(this, result) } + + /** + * Gets the name of this asm operand named, if it exists. + */ + Name getName() { asm_operand_named_names(this, result) } + } + + /** + * INTERNAL: Do not use. + */ + class AsmOptionsList extends @asm_options_list, AsmPiece { + override string toString() { result = "AsmOptionsList" } + + /** + * Gets the `index`th asm option of this asm options list (0-based). + */ + AsmOption getAsmOption(int index) { asm_options_list_asm_options(this, index, result) } + } + + /** + * INTERNAL: Do not use. + */ + class AsmRegOperand extends @asm_reg_operand, AsmOperand { + override string toString() { result = "AsmRegOperand" } + + /** + * Gets the asm dir spec of this asm reg operand, if it exists. + */ + AsmDirSpec getAsmDirSpec() { asm_reg_operand_asm_dir_specs(this, result) } + + /** + * Gets the asm operand expression of this asm reg operand, if it exists. + */ + AsmOperandExpr getAsmOperandExpr() { asm_reg_operand_asm_operand_exprs(this, result) } + + /** + * Gets the asm reg spec of this asm reg operand, if it exists. + */ + AsmRegSpec getAsmRegSpec() { asm_reg_operand_asm_reg_specs(this, result) } + } + + /** + * INTERNAL: Do not use. + */ + class AsmSym extends @asm_sym, AsmOperand { + override string toString() { result = "AsmSym" } + + /** + * Gets the path of this asm sym, if it exists. + */ + Path getPath() { asm_sym_paths(this, result) } } /** @@ -2026,6 +2189,22 @@ module Raw { TypeRepr getTypeRepr() { let_stmt_type_reprs(this, result) } } + /** + * INTERNAL: Do not use. + * A Lifetime. For example: + * ```rust + * todo!() + * ``` + */ + class Lifetime extends @lifetime, UseBoundGenericArg { + override string toString() { result = "Lifetime" } + + /** + * Gets the text of this lifetime, if it exists. + */ + string getText() { lifetime_texts(this, result) } + } + /** * INTERNAL: Do not use. * A LifetimeArg. For example: @@ -2198,6 +2377,22 @@ module Raw { MatchArmList getMatchArmList() { match_expr_match_arm_lists(this, result) } } + /** + * INTERNAL: Do not use. + * A NameRef. For example: + * ```rust + * todo!() + * ``` + */ + class NameRef extends @name_ref, UseBoundGenericArg { + override string toString() { result = "NameRef" } + + /** + * Gets the text of this name reference, if it exists. + */ + string getText() { name_ref_texts(this, result) } + } + /** * INTERNAL: Do not use. * A NeverTypeRepr. For example: @@ -3590,6 +3785,11 @@ module Raw { */ predicate isStatic() { static_is_static(this) } + /** + * Holds if this static is unsafe. + */ + predicate isUnsafe() { static_is_unsafe(this) } + /** * Gets the name of this static, if it exists. */ diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/Static.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/Static.qll index 8531b6c58a00..00475e87558c 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/Static.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/Static.qll @@ -70,6 +70,11 @@ module Generated { */ predicate isStatic() { Synth::convertStaticToRaw(this).(Raw::Static).isStatic() } + /** + * Holds if this static is unsafe. + */ + predicate isUnsafe() { Synth::convertStaticToRaw(this).(Raw::Static).isUnsafe() } + /** * Gets the name of this static, if it exists. */ diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/Synth.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/Synth.qll index 02ce677071e5..fff08a91d81b 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/Synth.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/Synth.qll @@ -38,10 +38,54 @@ module Synth { * INTERNAL: Do not use. */ TArrayTypeRepr(Raw::ArrayTypeRepr id) { constructArrayTypeRepr(id) } or + /** + * INTERNAL: Do not use. + */ + TAsmClobberAbi(Raw::AsmClobberAbi id) { constructAsmClobberAbi(id) } or + /** + * INTERNAL: Do not use. + */ + TAsmConst(Raw::AsmConst id) { constructAsmConst(id) } or + /** + * INTERNAL: Do not use. + */ + TAsmDirSpec(Raw::AsmDirSpec id) { constructAsmDirSpec(id) } or /** * INTERNAL: Do not use. */ TAsmExpr(Raw::AsmExpr id) { constructAsmExpr(id) } or + /** + * INTERNAL: Do not use. + */ + TAsmLabel(Raw::AsmLabel id) { constructAsmLabel(id) } or + /** + * INTERNAL: Do not use. + */ + TAsmOperandExpr(Raw::AsmOperandExpr id) { constructAsmOperandExpr(id) } or + /** + * INTERNAL: Do not use. + */ + TAsmOperandNamed(Raw::AsmOperandNamed id) { constructAsmOperandNamed(id) } or + /** + * INTERNAL: Do not use. + */ + TAsmOption(Raw::AsmOption id) { constructAsmOption(id) } or + /** + * INTERNAL: Do not use. + */ + TAsmOptionsList(Raw::AsmOptionsList id) { constructAsmOptionsList(id) } or + /** + * INTERNAL: Do not use. + */ + TAsmRegOperand(Raw::AsmRegOperand id) { constructAsmRegOperand(id) } or + /** + * INTERNAL: Do not use. + */ + TAsmRegSpec(Raw::AsmRegSpec id) { constructAsmRegSpec(id) } or + /** + * INTERNAL: Do not use. + */ + TAsmSym(Raw::AsmSym id) { constructAsmSym(id) } or /** * INTERNAL: Do not use. */ @@ -374,6 +418,10 @@ module Synth { * INTERNAL: Do not use. */ TParenTypeRepr(Raw::ParenTypeRepr id) { constructParenTypeRepr(id) } or + /** + * INTERNAL: Do not use. + */ + TParenthesizedArgList(Raw::ParenthesizedArgList id) { constructParenthesizedArgList(id) } or /** * INTERNAL: Do not use. */ @@ -578,6 +626,10 @@ module Synth { * INTERNAL: Do not use. */ TUse(Raw::Use id) { constructUse(id) } or + /** + * INTERNAL: Do not use. + */ + TUseBoundGenericArgs(Raw::UseBoundGenericArgs id) { constructUseBoundGenericArgs(id) } or /** * INTERNAL: Do not use. */ @@ -633,6 +685,16 @@ module Synth { */ class TArrayExpr = TArrayListExpr or TArrayRepeatExpr; + /** + * INTERNAL: Do not use. + */ + class TAsmOperand = TAsmConst or TAsmLabel or TAsmRegOperand or TAsmSym; + + /** + * INTERNAL: Do not use. + */ + class TAsmPiece = TAsmClobberAbi or TAsmOperandNamed or TAsmOptionsList; + /** * INTERNAL: Do not use. */ @@ -642,16 +704,18 @@ module Synth { * INTERNAL: Do not use. */ class TAstNode = - TAbi or TAddressable or TArgList or TAssocItem or TAssocItemList or TAttr or TCallable or - TClosureBinder or TExpr or TExternItem or TExternItemList or TFieldList or TFormatArgsArg or - TGenericArg or TGenericArgList or TGenericParam or TGenericParamList or TItemList or - TLabel or TLetElse or TLifetime or TMacroItems or TMacroStmts or TMatchArm or - TMatchArmList or TMatchGuard or TMeta or TName or TNameRef or TParamBase or TParamList or - TPat or TPath or TPathSegment or TRecordExprField or TRecordExprFieldList or TRecordField or - TRecordPatField or TRecordPatFieldList or TRename or TResolvable or TRetTypeRepr or - TReturnTypeSyntax or TSourceFile or TStmt or TStmtList or TToken or TTokenTree or - TTupleField or TTypeBound or TTypeBoundList or TTypeRepr or TUseTree or TUseTreeList or - TVariantList or TVisibility or TWhereClause or TWherePred; + TAbi or TAddressable or TArgList or TAsmDirSpec or TAsmOperand or TAsmOperandExpr or + TAsmOption or TAsmPiece or TAsmRegSpec or TAssocItem or TAssocItemList or TAttr or + TCallable or TClosureBinder or TExpr or TExternItem or TExternItemList or TFieldList or + TFormatArgsArg or TGenericArg or TGenericArgList or TGenericParam or TGenericParamList or + TItemList or TLabel or TLetElse or TMacroItems or TMacroStmts or TMatchArm or + TMatchArmList or TMatchGuard or TMeta or TName or TParamBase or TParamList or + TParenthesizedArgList or TPat or TPath or TPathSegment or TRecordExprField or + TRecordExprFieldList or TRecordField or TRecordPatField or TRecordPatFieldList or TRename or + TResolvable or TRetTypeRepr or TReturnTypeSyntax or TSourceFile or TStmt or TStmtList or + TToken or TTokenTree or TTupleField or TTypeBound or TTypeBoundList or TTypeRepr or + TUseBoundGenericArg or TUseBoundGenericArgs or TUseTree or TUseTreeList or TVariantList or + TVisibility or TWhereClause or TWherePred; /** * INTERNAL: Do not use. @@ -768,6 +832,11 @@ module Synth { */ class TUnextracted = TMissing or TUnimplemented; + /** + * INTERNAL: Do not use. + */ + class TUseBoundGenericArg = TLifetime or TNameRef; + /** * INTERNAL: Do not use. * Converts a raw element to a synthesized `TAbi`, if possible. @@ -806,12 +875,78 @@ module Synth { */ TArrayTypeRepr convertArrayTypeReprFromRaw(Raw::Element e) { result = TArrayTypeRepr(e) } + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TAsmClobberAbi`, if possible. + */ + TAsmClobberAbi convertAsmClobberAbiFromRaw(Raw::Element e) { result = TAsmClobberAbi(e) } + + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TAsmConst`, if possible. + */ + TAsmConst convertAsmConstFromRaw(Raw::Element e) { result = TAsmConst(e) } + + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TAsmDirSpec`, if possible. + */ + TAsmDirSpec convertAsmDirSpecFromRaw(Raw::Element e) { result = TAsmDirSpec(e) } + /** * INTERNAL: Do not use. * Converts a raw element to a synthesized `TAsmExpr`, if possible. */ TAsmExpr convertAsmExprFromRaw(Raw::Element e) { result = TAsmExpr(e) } + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TAsmLabel`, if possible. + */ + TAsmLabel convertAsmLabelFromRaw(Raw::Element e) { result = TAsmLabel(e) } + + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TAsmOperandExpr`, if possible. + */ + TAsmOperandExpr convertAsmOperandExprFromRaw(Raw::Element e) { result = TAsmOperandExpr(e) } + + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TAsmOperandNamed`, if possible. + */ + TAsmOperandNamed convertAsmOperandNamedFromRaw(Raw::Element e) { result = TAsmOperandNamed(e) } + + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TAsmOption`, if possible. + */ + TAsmOption convertAsmOptionFromRaw(Raw::Element e) { result = TAsmOption(e) } + + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TAsmOptionsList`, if possible. + */ + TAsmOptionsList convertAsmOptionsListFromRaw(Raw::Element e) { result = TAsmOptionsList(e) } + + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TAsmRegOperand`, if possible. + */ + TAsmRegOperand convertAsmRegOperandFromRaw(Raw::Element e) { result = TAsmRegOperand(e) } + + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TAsmRegSpec`, if possible. + */ + TAsmRegSpec convertAsmRegSpecFromRaw(Raw::Element e) { result = TAsmRegSpec(e) } + + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TAsmSym`, if possible. + */ + TAsmSym convertAsmSymFromRaw(Raw::Element e) { result = TAsmSym(e) } + /** * INTERNAL: Do not use. * Converts a raw element to a synthesized `TAssocItemList`, if possible. @@ -1302,6 +1437,14 @@ module Synth { */ TParenTypeRepr convertParenTypeReprFromRaw(Raw::Element e) { result = TParenTypeRepr(e) } + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TParenthesizedArgList`, if possible. + */ + TParenthesizedArgList convertParenthesizedArgListFromRaw(Raw::Element e) { + result = TParenthesizedArgList(e) + } + /** * INTERNAL: Do not use. * Converts a raw element to a synthesized `TPath`, if possible. @@ -1612,6 +1755,14 @@ module Synth { */ TUse convertUseFromRaw(Raw::Element e) { result = TUse(e) } + /** + * INTERNAL: Do not use. + * Converts a raw element to a synthesized `TUseBoundGenericArgs`, if possible. + */ + TUseBoundGenericArgs convertUseBoundGenericArgsFromRaw(Raw::Element e) { + result = TUseBoundGenericArgs(e) + } + /** * INTERNAL: Do not use. * Converts a raw element to a synthesized `TUseTree`, if possible. @@ -1698,6 +1849,32 @@ module Synth { result = convertArrayRepeatExprFromRaw(e) } + /** + * INTERNAL: Do not use. + * Converts a raw DB element to a synthesized `TAsmOperand`, if possible. + */ + TAsmOperand convertAsmOperandFromRaw(Raw::Element e) { + result = convertAsmConstFromRaw(e) + or + result = convertAsmLabelFromRaw(e) + or + result = convertAsmRegOperandFromRaw(e) + or + result = convertAsmSymFromRaw(e) + } + + /** + * INTERNAL: Do not use. + * Converts a raw DB element to a synthesized `TAsmPiece`, if possible. + */ + TAsmPiece convertAsmPieceFromRaw(Raw::Element e) { + result = convertAsmClobberAbiFromRaw(e) + or + result = convertAsmOperandNamedFromRaw(e) + or + result = convertAsmOptionsListFromRaw(e) + } + /** * INTERNAL: Do not use. * Converts a raw DB element to a synthesized `TAssocItem`, if possible. @@ -1723,6 +1900,18 @@ module Synth { or result = convertArgListFromRaw(e) or + result = convertAsmDirSpecFromRaw(e) + or + result = convertAsmOperandFromRaw(e) + or + result = convertAsmOperandExprFromRaw(e) + or + result = convertAsmOptionFromRaw(e) + or + result = convertAsmPieceFromRaw(e) + or + result = convertAsmRegSpecFromRaw(e) + or result = convertAssocItemFromRaw(e) or result = convertAssocItemListFromRaw(e) @@ -1757,8 +1946,6 @@ module Synth { or result = convertLetElseFromRaw(e) or - result = convertLifetimeFromRaw(e) - or result = convertMacroItemsFromRaw(e) or result = convertMacroStmtsFromRaw(e) @@ -1773,12 +1960,12 @@ module Synth { or result = convertNameFromRaw(e) or - result = convertNameRefFromRaw(e) - or result = convertParamBaseFromRaw(e) or result = convertParamListFromRaw(e) or + result = convertParenthesizedArgListFromRaw(e) + or result = convertPatFromRaw(e) or result = convertPathFromRaw(e) @@ -1821,6 +2008,10 @@ module Synth { or result = convertTypeReprFromRaw(e) or + result = convertUseBoundGenericArgFromRaw(e) + or + result = convertUseBoundGenericArgsFromRaw(e) + or result = convertUseTreeFromRaw(e) or result = convertUseTreeListFromRaw(e) @@ -2208,6 +2399,16 @@ module Synth { result = convertUnimplementedFromRaw(e) } + /** + * INTERNAL: Do not use. + * Converts a raw DB element to a synthesized `TUseBoundGenericArg`, if possible. + */ + TUseBoundGenericArg convertUseBoundGenericArgFromRaw(Raw::Element e) { + result = convertLifetimeFromRaw(e) + or + result = convertNameRefFromRaw(e) + } + /** * INTERNAL: Do not use. * Converts a synthesized `TAbi` to a raw DB element, if possible. @@ -2246,12 +2447,78 @@ module Synth { */ Raw::Element convertArrayTypeReprToRaw(TArrayTypeRepr e) { e = TArrayTypeRepr(result) } + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmClobberAbi` to a raw DB element, if possible. + */ + Raw::Element convertAsmClobberAbiToRaw(TAsmClobberAbi e) { e = TAsmClobberAbi(result) } + + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmConst` to a raw DB element, if possible. + */ + Raw::Element convertAsmConstToRaw(TAsmConst e) { e = TAsmConst(result) } + + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmDirSpec` to a raw DB element, if possible. + */ + Raw::Element convertAsmDirSpecToRaw(TAsmDirSpec e) { e = TAsmDirSpec(result) } + /** * INTERNAL: Do not use. * Converts a synthesized `TAsmExpr` to a raw DB element, if possible. */ Raw::Element convertAsmExprToRaw(TAsmExpr e) { e = TAsmExpr(result) } + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmLabel` to a raw DB element, if possible. + */ + Raw::Element convertAsmLabelToRaw(TAsmLabel e) { e = TAsmLabel(result) } + + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmOperandExpr` to a raw DB element, if possible. + */ + Raw::Element convertAsmOperandExprToRaw(TAsmOperandExpr e) { e = TAsmOperandExpr(result) } + + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmOperandNamed` to a raw DB element, if possible. + */ + Raw::Element convertAsmOperandNamedToRaw(TAsmOperandNamed e) { e = TAsmOperandNamed(result) } + + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmOption` to a raw DB element, if possible. + */ + Raw::Element convertAsmOptionToRaw(TAsmOption e) { e = TAsmOption(result) } + + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmOptionsList` to a raw DB element, if possible. + */ + Raw::Element convertAsmOptionsListToRaw(TAsmOptionsList e) { e = TAsmOptionsList(result) } + + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmRegOperand` to a raw DB element, if possible. + */ + Raw::Element convertAsmRegOperandToRaw(TAsmRegOperand e) { e = TAsmRegOperand(result) } + + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmRegSpec` to a raw DB element, if possible. + */ + Raw::Element convertAsmRegSpecToRaw(TAsmRegSpec e) { e = TAsmRegSpec(result) } + + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmSym` to a raw DB element, if possible. + */ + Raw::Element convertAsmSymToRaw(TAsmSym e) { e = TAsmSym(result) } + /** * INTERNAL: Do not use. * Converts a synthesized `TAssocItemList` to a raw DB element, if possible. @@ -2740,6 +3007,14 @@ module Synth { */ Raw::Element convertParenTypeReprToRaw(TParenTypeRepr e) { e = TParenTypeRepr(result) } + /** + * INTERNAL: Do not use. + * Converts a synthesized `TParenthesizedArgList` to a raw DB element, if possible. + */ + Raw::Element convertParenthesizedArgListToRaw(TParenthesizedArgList e) { + e = TParenthesizedArgList(result) + } + /** * INTERNAL: Do not use. * Converts a synthesized `TPath` to a raw DB element, if possible. @@ -3050,6 +3325,14 @@ module Synth { */ Raw::Element convertUseToRaw(TUse e) { e = TUse(result) } + /** + * INTERNAL: Do not use. + * Converts a synthesized `TUseBoundGenericArgs` to a raw DB element, if possible. + */ + Raw::Element convertUseBoundGenericArgsToRaw(TUseBoundGenericArgs e) { + e = TUseBoundGenericArgs(result) + } + /** * INTERNAL: Do not use. * Converts a synthesized `TUseTree` to a raw DB element, if possible. @@ -3136,6 +3419,32 @@ module Synth { result = convertArrayRepeatExprToRaw(e) } + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmOperand` to a raw DB element, if possible. + */ + Raw::Element convertAsmOperandToRaw(TAsmOperand e) { + result = convertAsmConstToRaw(e) + or + result = convertAsmLabelToRaw(e) + or + result = convertAsmRegOperandToRaw(e) + or + result = convertAsmSymToRaw(e) + } + + /** + * INTERNAL: Do not use. + * Converts a synthesized `TAsmPiece` to a raw DB element, if possible. + */ + Raw::Element convertAsmPieceToRaw(TAsmPiece e) { + result = convertAsmClobberAbiToRaw(e) + or + result = convertAsmOperandNamedToRaw(e) + or + result = convertAsmOptionsListToRaw(e) + } + /** * INTERNAL: Do not use. * Converts a synthesized `TAssocItem` to a raw DB element, if possible. @@ -3161,6 +3470,18 @@ module Synth { or result = convertArgListToRaw(e) or + result = convertAsmDirSpecToRaw(e) + or + result = convertAsmOperandToRaw(e) + or + result = convertAsmOperandExprToRaw(e) + or + result = convertAsmOptionToRaw(e) + or + result = convertAsmPieceToRaw(e) + or + result = convertAsmRegSpecToRaw(e) + or result = convertAssocItemToRaw(e) or result = convertAssocItemListToRaw(e) @@ -3195,8 +3516,6 @@ module Synth { or result = convertLetElseToRaw(e) or - result = convertLifetimeToRaw(e) - or result = convertMacroItemsToRaw(e) or result = convertMacroStmtsToRaw(e) @@ -3211,12 +3530,12 @@ module Synth { or result = convertNameToRaw(e) or - result = convertNameRefToRaw(e) - or result = convertParamBaseToRaw(e) or result = convertParamListToRaw(e) or + result = convertParenthesizedArgListToRaw(e) + or result = convertPatToRaw(e) or result = convertPathToRaw(e) @@ -3259,6 +3578,10 @@ module Synth { or result = convertTypeReprToRaw(e) or + result = convertUseBoundGenericArgToRaw(e) + or + result = convertUseBoundGenericArgsToRaw(e) + or result = convertUseTreeToRaw(e) or result = convertUseTreeListToRaw(e) @@ -3645,4 +3968,14 @@ module Synth { or result = convertUnimplementedToRaw(e) } + + /** + * INTERNAL: Do not use. + * Converts a synthesized `TUseBoundGenericArg` to a raw DB element, if possible. + */ + Raw::Element convertUseBoundGenericArgToRaw(TUseBoundGenericArg e) { + result = convertLifetimeToRaw(e) + or + result = convertNameRefToRaw(e) + } } diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/SynthConstructors.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/SynthConstructors.qll index 3b2a58083b14..7cfc9bda34f4 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/SynthConstructors.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/SynthConstructors.qll @@ -9,7 +9,18 @@ import codeql.rust.elements.internal.ArrayExprInternalConstructor import codeql.rust.elements.internal.ArrayListExprConstructor import codeql.rust.elements.internal.ArrayRepeatExprConstructor import codeql.rust.elements.internal.ArrayTypeReprConstructor +import codeql.rust.elements.internal.AsmClobberAbiConstructor +import codeql.rust.elements.internal.AsmConstConstructor +import codeql.rust.elements.internal.AsmDirSpecConstructor import codeql.rust.elements.internal.AsmExprConstructor +import codeql.rust.elements.internal.AsmLabelConstructor +import codeql.rust.elements.internal.AsmOperandExprConstructor +import codeql.rust.elements.internal.AsmOperandNamedConstructor +import codeql.rust.elements.internal.AsmOptionConstructor +import codeql.rust.elements.internal.AsmOptionsListConstructor +import codeql.rust.elements.internal.AsmRegOperandConstructor +import codeql.rust.elements.internal.AsmRegSpecConstructor +import codeql.rust.elements.internal.AsmSymConstructor import codeql.rust.elements.internal.AssocItemListConstructor import codeql.rust.elements.internal.AssocTypeArgConstructor import codeql.rust.elements.internal.AttrConstructor @@ -91,6 +102,7 @@ import codeql.rust.elements.internal.ParamListConstructor import codeql.rust.elements.internal.ParenExprConstructor import codeql.rust.elements.internal.ParenPatConstructor import codeql.rust.elements.internal.ParenTypeReprConstructor +import codeql.rust.elements.internal.ParenthesizedArgListConstructor import codeql.rust.elements.internal.PathConstructor import codeql.rust.elements.internal.PathExprConstructor import codeql.rust.elements.internal.PathPatConstructor @@ -142,6 +154,7 @@ import codeql.rust.elements.internal.UnderscoreExprConstructor import codeql.rust.elements.internal.UnimplementedConstructor import codeql.rust.elements.internal.UnionConstructor import codeql.rust.elements.internal.UseConstructor +import codeql.rust.elements.internal.UseBoundGenericArgsConstructor import codeql.rust.elements.internal.UseTreeConstructor import codeql.rust.elements.internal.UseTreeListConstructor import codeql.rust.elements.internal.VariantConstructor diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/TypeBound.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/TypeBound.qll index ff19afa11841..0667a931e453 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/TypeBound.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/TypeBound.qll @@ -7,9 +7,9 @@ private import codeql.rust.elements.internal.generated.Synth private import codeql.rust.elements.internal.generated.Raw import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl -import codeql.rust.elements.GenericParamList import codeql.rust.elements.Lifetime import codeql.rust.elements.TypeRepr +import codeql.rust.elements.UseBoundGenericArgs /** * INTERNAL: This module contains the fully generated definition of `TypeBound` and should not @@ -27,21 +27,6 @@ module Generated { class TypeBound extends Synth::TTypeBound, AstNodeImpl::AstNode { override string getAPrimaryQlClass() { result = "TypeBound" } - /** - * Gets the generic parameter list of this type bound, if it exists. - */ - GenericParamList getGenericParamList() { - result = - Synth::convertGenericParamListFromRaw(Synth::convertTypeBoundToRaw(this) - .(Raw::TypeBound) - .getGenericParamList()) - } - - /** - * Holds if `getGenericParamList()` exists. - */ - final predicate hasGenericParamList() { exists(this.getGenericParamList()) } - /** * Holds if this type bound is async. */ @@ -81,5 +66,20 @@ module Generated { * Holds if `getTypeRepr()` exists. */ final predicate hasTypeRepr() { exists(this.getTypeRepr()) } + + /** + * Gets the use bound generic arguments of this type bound, if it exists. + */ + UseBoundGenericArgs getUseBoundGenericArgs() { + result = + Synth::convertUseBoundGenericArgsFromRaw(Synth::convertTypeBoundToRaw(this) + .(Raw::TypeBound) + .getUseBoundGenericArgs()) + } + + /** + * Holds if `getUseBoundGenericArgs()` exists. + */ + final predicate hasUseBoundGenericArgs() { exists(this.getUseBoundGenericArgs()) } } } diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/UseBoundGenericArg.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/UseBoundGenericArg.qll new file mode 100644 index 000000000000..d02f0b3651dc --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/UseBoundGenericArg.qll @@ -0,0 +1,21 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `UseBoundGenericArg`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl + +/** + * INTERNAL: This module contains the fully generated definition of `UseBoundGenericArg` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::UseBoundGenericArg` class directly. + * Use the subclass `UseBoundGenericArg`, where the following predicates are available. + */ + class UseBoundGenericArg extends Synth::TUseBoundGenericArg, AstNodeImpl::AstNode { } +} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/UseBoundGenericArgs.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/UseBoundGenericArgs.qll new file mode 100644 index 000000000000..b900f7e01d39 --- /dev/null +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/UseBoundGenericArgs.qll @@ -0,0 +1,46 @@ +// generated by codegen, do not edit +/** + * This module provides the generated definition of `UseBoundGenericArgs`. + * INTERNAL: Do not import directly. + */ + +private import codeql.rust.elements.internal.generated.Synth +private import codeql.rust.elements.internal.generated.Raw +import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl +import codeql.rust.elements.UseBoundGenericArg + +/** + * INTERNAL: This module contains the fully generated definition of `UseBoundGenericArgs` and should not + * be referenced directly. + */ +module Generated { + /** + * INTERNAL: Do not reference the `Generated::UseBoundGenericArgs` class directly. + * Use the subclass `UseBoundGenericArgs`, where the following predicates are available. + */ + class UseBoundGenericArgs extends Synth::TUseBoundGenericArgs, AstNodeImpl::AstNode { + override string getAPrimaryQlClass() { result = "UseBoundGenericArgs" } + + /** + * Gets the `index`th use bound generic argument of this use bound generic arguments (0-based). + */ + UseBoundGenericArg getUseBoundGenericArg(int index) { + result = + Synth::convertUseBoundGenericArgFromRaw(Synth::convertUseBoundGenericArgsToRaw(this) + .(Raw::UseBoundGenericArgs) + .getUseBoundGenericArg(index)) + } + + /** + * Gets any of the use bound generic arguments of this use bound generic arguments. + */ + final UseBoundGenericArg getAUseBoundGenericArg() { result = this.getUseBoundGenericArg(_) } + + /** + * Gets the number of use bound generic arguments of this use bound generic arguments. + */ + final int getNumberOfUseBoundGenericArgs() { + result = count(int i | exists(this.getUseBoundGenericArg(i))) + } + } +} diff --git a/rust/ql/lib/rust.dbscheme b/rust/ql/lib/rust.dbscheme index df89d1c2034f..6cb586f2f821 100644 --- a/rust/ql/lib/rust.dbscheme +++ b/rust/ql/lib/rust.dbscheme @@ -145,6 +145,12 @@ extractor_steps( @abi | @addressable | @arg_list +| @asm_dir_spec +| @asm_operand +| @asm_operand_expr +| @asm_option +| @asm_piece +| @asm_reg_spec | @assoc_item | @assoc_item_list | @attr @@ -162,7 +168,6 @@ extractor_steps( | @item_list | @label | @let_else -| @lifetime | @macro_items | @macro_stmts | @match_arm @@ -170,9 +175,9 @@ extractor_steps( | @match_guard | @meta | @name -| @name_ref | @param_base | @param_list +| @parenthesized_arg_list | @pat | @path | @path_segment @@ -194,6 +199,8 @@ extractor_steps( | @type_bound | @type_bound_list | @type_repr +| @use_bound_generic_arg +| @use_bound_generic_args | @use_tree | @use_tree_list | @variant_list @@ -248,6 +255,58 @@ arg_list_args( int arg: @expr ref ); +asm_dir_specs( + unique int id: @asm_dir_spec +); + +@asm_operand = + @asm_const +| @asm_label +| @asm_reg_operand +| @asm_sym +; + +asm_operand_exprs( + unique int id: @asm_operand_expr +); + +#keyset[id] +asm_operand_expr_in_exprs( + int id: @asm_operand_expr ref, + int in_expr: @expr ref +); + +#keyset[id] +asm_operand_expr_out_exprs( + int id: @asm_operand_expr ref, + int out_expr: @expr ref +); + +asm_options( + unique int id: @asm_option +); + +#keyset[id] +asm_option_is_raw( + int id: @asm_option ref +); + +@asm_piece = + @asm_clobber_abi +| @asm_operand_named +| @asm_options_list +; + +asm_reg_specs( + unique int id: @asm_reg_spec +); + +#keyset[id] +asm_reg_spec_name_refs( + int id: @asm_reg_spec ref, + int name_ref: @name_ref ref +); + @assoc_item = @const | @function @@ -465,16 +524,6 @@ let_else_block_exprs( int block_expr: @block_expr ref ); -lifetimes( - unique int id: @lifetime -); - -#keyset[id] -lifetime_texts( - int id: @lifetime ref, - string text: string ref -); - macro_items( unique int id: @macro_items ); @@ -597,16 +646,6 @@ name_texts( string text: string ref ); -name_refs( - unique int id: @name_ref -); - -#keyset[id] -name_ref_texts( - int id: @name_ref ref, - string text: string ref -); - @param_base = @param | @self_param @@ -642,6 +681,17 @@ param_list_self_params( int self_param: @self_param ref ); +parenthesized_arg_lists( + unique int id: @parenthesized_arg_list +); + +#keyset[id, index] +parenthesized_arg_list_type_args( + int id: @parenthesized_arg_list ref, + int index: int ref, + int type_arg: @type_arg ref +); + @pat = @box_pat | @const_block_pat @@ -694,9 +744,9 @@ path_segment_name_refs( ); #keyset[id] -path_segment_param_lists( +path_segment_parenthesized_arg_lists( int id: @path_segment ref, - int param_list: @param_list ref + int parenthesized_arg_list: @parenthesized_arg_list ref ); #keyset[id] @@ -963,12 +1013,6 @@ type_bounds( unique int id: @type_bound ); -#keyset[id] -type_bound_generic_param_lists( - int id: @type_bound ref, - int generic_param_list: @generic_param_list ref -); - #keyset[id] type_bound_is_async( int id: @type_bound ref @@ -991,6 +1035,12 @@ type_bound_type_reprs( int type_repr: @type_repr ref ); +#keyset[id] +type_bound_use_bound_generic_args( + int id: @type_bound ref, + int use_bound_generic_args: @use_bound_generic_args ref +); + type_bound_lists( unique int id: @type_bound_list ); @@ -1019,6 +1069,22 @@ type_bound_list_bounds( | @tuple_type_repr ; +@use_bound_generic_arg = + @lifetime +| @name_ref +; + +use_bound_generic_args( + unique int id: @use_bound_generic_args +); + +#keyset[id, index] +use_bound_generic_args_use_bound_generic_args( + int id: @use_bound_generic_args ref, + int index: int ref, + int use_bound_generic_arg: @use_bound_generic_arg ref +); + use_trees( unique int id: @use_tree ); @@ -1151,10 +1217,36 @@ array_type_repr_element_type_reprs( int element_type_repr: @type_repr ref ); +asm_clobber_abis( + unique int id: @asm_clobber_abi +); + +asm_consts( + unique int id: @asm_const +); + +#keyset[id] +asm_const_exprs( + int id: @asm_const ref, + int expr: @expr ref +); + +#keyset[id] +asm_const_is_const( + int id: @asm_const ref +); + asm_exprs( unique int id: @asm_expr ); +#keyset[id, index] +asm_expr_asm_pieces( + int id: @asm_expr ref, + int index: int ref, + int asm_piece: @asm_piece ref +); + #keyset[id, index] asm_expr_attrs( int id: @asm_expr ref, @@ -1162,10 +1254,80 @@ asm_expr_attrs( int attr: @attr ref ); -#keyset[id] -asm_expr_exprs( +#keyset[id, index] +asm_expr_templates( int id: @asm_expr ref, - int expr: @expr ref + int index: int ref, + int template: @expr ref +); + +asm_labels( + unique int id: @asm_label +); + +#keyset[id] +asm_label_block_exprs( + int id: @asm_label ref, + int block_expr: @block_expr ref +); + +asm_operand_nameds( + unique int id: @asm_operand_named +); + +#keyset[id] +asm_operand_named_asm_operands( + int id: @asm_operand_named ref, + int asm_operand: @asm_operand ref +); + +#keyset[id] +asm_operand_named_names( + int id: @asm_operand_named ref, + int name: @name ref +); + +asm_options_lists( + unique int id: @asm_options_list +); + +#keyset[id, index] +asm_options_list_asm_options( + int id: @asm_options_list ref, + int index: int ref, + int asm_option: @asm_option ref +); + +asm_reg_operands( + unique int id: @asm_reg_operand +); + +#keyset[id] +asm_reg_operand_asm_dir_specs( + int id: @asm_reg_operand ref, + int asm_dir_spec: @asm_dir_spec ref +); + +#keyset[id] +asm_reg_operand_asm_operand_exprs( + int id: @asm_reg_operand ref, + int asm_operand_expr: @asm_operand_expr ref +); + +#keyset[id] +asm_reg_operand_asm_reg_specs( + int id: @asm_reg_operand ref, + int asm_reg_spec: @asm_reg_spec ref +); + +asm_syms( + unique int id: @asm_sym +); + +#keyset[id] +asm_sym_paths( + int id: @asm_sym ref, + int path: @path ref ); assoc_type_args( @@ -1794,6 +1956,16 @@ let_stmt_type_reprs( int type_repr: @type_repr ref ); +lifetimes( + unique int id: @lifetime +); + +#keyset[id] +lifetime_texts( + int id: @lifetime ref, + string text: string ref +); + lifetime_args( unique int id: @lifetime_arg ); @@ -1907,6 +2079,16 @@ match_expr_match_arm_lists( int match_arm_list: @match_arm_list ref ); +name_refs( + unique int id: @name_ref +); + +#keyset[id] +name_ref_texts( + int id: @name_ref ref, + string text: string ref +); + never_type_reprs( unique int id: @never_type_repr ); @@ -3011,6 +3193,11 @@ static_is_static( int id: @static ref ); +#keyset[id] +static_is_unsafe( + int id: @static ref +); + #keyset[id] static_names( int id: @static ref, diff --git a/rust/ql/test/extractor-tests/generated/AsmClobberAbi/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/AsmClobberAbi/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmClobberAbi/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/ql/test/extractor-tests/generated/AsmConst/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/AsmConst/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmConst/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/ql/test/extractor-tests/generated/AsmDirSpec/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/AsmDirSpec/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmDirSpec/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr.expected b/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr.expected index 19464c21fd6a..05fcb479b683 100644 --- a/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr.expected +++ b/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr.expected @@ -1 +1 @@ -| gen_asm_expr.rs:6:9:6:24 | AsmExpr | getNumberOfAttrs: | 0 | hasExpr: | yes | +| gen_asm_expr.rs:6:9:6:24 | AsmExpr | getNumberOfAsmPieces: | 0 | getNumberOfAttrs: | 0 | getNumberOfTemplates: | 1 | diff --git a/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr.ql b/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr.ql index f5662fedfbb1..1658328f7b67 100644 --- a/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr.ql +++ b/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr.ql @@ -2,10 +2,12 @@ import codeql.rust.elements import TestUtils -from AsmExpr x, int getNumberOfAttrs, string hasExpr +from AsmExpr x, int getNumberOfAsmPieces, int getNumberOfAttrs, int getNumberOfTemplates where toBeTested(x) and not x.isUnknown() and + getNumberOfAsmPieces = x.getNumberOfAsmPieces() and getNumberOfAttrs = x.getNumberOfAttrs() and - if x.hasExpr() then hasExpr = "yes" else hasExpr = "no" -select x, "getNumberOfAttrs:", getNumberOfAttrs, "hasExpr:", hasExpr + getNumberOfTemplates = x.getNumberOfTemplates() +select x, "getNumberOfAsmPieces:", getNumberOfAsmPieces, "getNumberOfAttrs:", getNumberOfAttrs, + "getNumberOfTemplates:", getNumberOfTemplates diff --git a/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getAsmPiece.expected b/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getAsmPiece.expected new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getExpr.ql b/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getAsmPiece.ql similarity index 66% rename from rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getExpr.ql rename to rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getAsmPiece.ql index 375017aab2d8..a29ac3d48891 100644 --- a/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getExpr.ql +++ b/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getAsmPiece.ql @@ -2,6 +2,6 @@ import codeql.rust.elements import TestUtils -from AsmExpr x +from AsmExpr x, int index where toBeTested(x) and not x.isUnknown() -select x, x.getExpr() +select x, index, x.getAsmPiece(index) diff --git a/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getTemplate.expected b/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getTemplate.expected new file mode 100644 index 000000000000..8957e7fb6d07 --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getTemplate.expected @@ -0,0 +1 @@ +| gen_asm_expr.rs:6:9:6:24 | AsmExpr | 0 | gen_asm_expr.rs:6:23:6:23 | _ | diff --git a/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getTemplate.ql b/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getTemplate.ql new file mode 100644 index 000000000000..71e98db67db4 --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmExpr/AsmExpr_getTemplate.ql @@ -0,0 +1,7 @@ +// generated by codegen, do not edit +import codeql.rust.elements +import TestUtils + +from AsmExpr x, int index +where toBeTested(x) and not x.isUnknown() +select x, index, x.getTemplate(index) diff --git a/rust/ql/test/extractor-tests/generated/AsmLabel/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/AsmLabel/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmLabel/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/ql/test/extractor-tests/generated/AsmOperandExpr/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/AsmOperandExpr/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmOperandExpr/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/ql/test/extractor-tests/generated/AsmOperandNamed/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/AsmOperandNamed/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmOperandNamed/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/ql/test/extractor-tests/generated/AsmOption/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/AsmOption/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmOption/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/ql/test/extractor-tests/generated/AsmOptionsList/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/AsmOptionsList/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmOptionsList/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/ql/test/extractor-tests/generated/AsmRegOperand/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/AsmRegOperand/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmRegOperand/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/ql/test/extractor-tests/generated/AsmRegSpec/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/AsmRegSpec/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmRegSpec/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/ql/test/extractor-tests/generated/AsmSym/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/AsmSym/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/AsmSym/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/ql/test/extractor-tests/generated/MacroItems/CONSISTENCY/AstConsistency.expected b/rust/ql/test/extractor-tests/generated/MacroItems/CONSISTENCY/AstConsistency.expected index cff0de0b5af2..65117407456e 100644 --- a/rust/ql/test/extractor-tests/generated/MacroItems/CONSISTENCY/AstConsistency.expected +++ b/rust/ql/test/extractor-tests/generated/MacroItems/CONSISTENCY/AstConsistency.expected @@ -5,7 +5,6 @@ noLocation | file://:0:0:0:0 | ...::path | | file://:0:0:0:0 | ArgList | | file://:0:0:0:0 | ArgList | -| file://:0:0:0:0 | MacroItems | | file://:0:0:0:0 | ParamList | | file://:0:0:0:0 | Path | | file://:0:0:0:0 | Path | diff --git a/rust/ql/test/extractor-tests/generated/MacroItems/MacroItems.expected b/rust/ql/test/extractor-tests/generated/MacroItems/MacroItems.expected index 6ef208f9c742..651c7cdec66e 100644 --- a/rust/ql/test/extractor-tests/generated/MacroItems/MacroItems.expected +++ b/rust/ql/test/extractor-tests/generated/MacroItems/MacroItems.expected @@ -1 +1 @@ -| file://:0:0:0:0 | MacroItems | getNumberOfItems: | 2 | +| gen_macro_items.rs:5:5:5:38 | MacroItems | getNumberOfItems: | 2 | diff --git a/rust/ql/test/extractor-tests/generated/MacroItems/MacroItems_getItem.expected b/rust/ql/test/extractor-tests/generated/MacroItems/MacroItems_getItem.expected index 5940fb61696a..dee883ca8b7c 100644 --- a/rust/ql/test/extractor-tests/generated/MacroItems/MacroItems_getItem.expected +++ b/rust/ql/test/extractor-tests/generated/MacroItems/MacroItems_getItem.expected @@ -1,2 +1,2 @@ -| file://:0:0:0:0 | MacroItems | 0 | file://:0:0:0:0 | Use | -| file://:0:0:0:0 | MacroItems | 1 | file://:0:0:0:0 | fn get_parent | +| gen_macro_items.rs:5:5:5:38 | MacroItems | 0 | file://:0:0:0:0 | Use | +| gen_macro_items.rs:5:5:5:38 | MacroItems | 1 | file://:0:0:0:0 | fn get_parent | diff --git a/rust/ql/test/extractor-tests/generated/ParenthesizedArgList/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/ParenthesizedArgList/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/ParenthesizedArgList/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/ql/test/extractor-tests/generated/Path/PathSegment.expected b/rust/ql/test/extractor-tests/generated/Path/PathSegment.expected index 1180aa8dd656..e24d40a75fe3 100644 --- a/rust/ql/test/extractor-tests/generated/Path/PathSegment.expected +++ b/rust/ql/test/extractor-tests/generated/Path/PathSegment.expected @@ -1,26 +1,26 @@ -| gen_path.rs:5:9:5:18 | some_crate | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path.rs:5:21:5:31 | some_module | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path.rs:5:34:5:42 | some_item | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path.rs:6:5:6:7 | foo | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path.rs:6:10:6:12 | bar | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_expr.rs:5:13:5:20 | variable | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_expr.rs:6:13:6:15 | foo | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_expr.rs:6:18:6:20 | bar | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_expr.rs:7:13:7:15 | <...> | hasGenericArgList: | no | hasNameRef: | no | hasParamList: | no | hasPathType: | yes | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | yes | -| gen_path_expr.rs:7:14:7:14 | T | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_expr.rs:7:14:7:14 | T | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_expr.rs:7:18:7:20 | foo | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_expr.rs:8:13:8:31 | <...> | hasGenericArgList: | no | hasNameRef: | no | hasParamList: | no | hasPathType: | yes | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | yes | -| gen_path_expr.rs:8:14:8:21 | TypeRepr | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_expr.rs:8:14:8:21 | TypeRepr | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_expr.rs:8:34:8:36 | foo | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_pat.rs:5:11:5:11 | x | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_pat.rs:6:9:6:11 | Foo | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_pat.rs:6:14:6:16 | Bar | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_type_repr.rs:5:14:5:16 | std | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_type_repr.rs:5:19:5:29 | collections | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_type_repr.rs:5:32:5:48 | HashMap::<...> | hasGenericArgList: | yes | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_type_repr.rs:5:40:5:42 | i32 | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_type_repr.rs:5:45:5:47 | i32 | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_type_repr.rs:6:14:6:14 | X | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | -| gen_path_type_repr.rs:6:17:6:20 | Item | hasGenericArgList: | no | hasNameRef: | yes | hasParamList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path.rs:5:9:5:18 | some_crate | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path.rs:5:21:5:31 | some_module | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path.rs:5:34:5:42 | some_item | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path.rs:6:5:6:7 | foo | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path.rs:6:10:6:12 | bar | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_expr.rs:5:13:5:20 | variable | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_expr.rs:6:13:6:15 | foo | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_expr.rs:6:18:6:20 | bar | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_expr.rs:7:13:7:15 | <...> | hasGenericArgList: | no | hasNameRef: | no | hasParenthesizedArgList: | no | hasPathType: | yes | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | yes | +| gen_path_expr.rs:7:14:7:14 | T | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_expr.rs:7:14:7:14 | T | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_expr.rs:7:18:7:20 | foo | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_expr.rs:8:13:8:31 | <...> | hasGenericArgList: | no | hasNameRef: | no | hasParenthesizedArgList: | no | hasPathType: | yes | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | yes | +| gen_path_expr.rs:8:14:8:21 | TypeRepr | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_expr.rs:8:14:8:21 | TypeRepr | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_expr.rs:8:34:8:36 | foo | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_pat.rs:5:11:5:11 | x | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_pat.rs:6:9:6:11 | Foo | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_pat.rs:6:14:6:16 | Bar | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_type_repr.rs:5:14:5:16 | std | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_type_repr.rs:5:19:5:29 | collections | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_type_repr.rs:5:32:5:48 | HashMap::<...> | hasGenericArgList: | yes | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_type_repr.rs:5:40:5:42 | i32 | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_type_repr.rs:5:45:5:47 | i32 | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_type_repr.rs:6:14:6:14 | X | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | +| gen_path_type_repr.rs:6:17:6:20 | Item | hasGenericArgList: | no | hasNameRef: | yes | hasParenthesizedArgList: | no | hasPathType: | no | hasRetType: | no | hasReturnTypeSyntax: | no | hasTypeRepr: | no | diff --git a/rust/ql/test/extractor-tests/generated/Path/PathSegment.ql b/rust/ql/test/extractor-tests/generated/Path/PathSegment.ql index 3ac8218cf0bf..65c346281489 100644 --- a/rust/ql/test/extractor-tests/generated/Path/PathSegment.ql +++ b/rust/ql/test/extractor-tests/generated/Path/PathSegment.ql @@ -3,18 +3,22 @@ import codeql.rust.elements import TestUtils from - PathSegment x, string hasGenericArgList, string hasNameRef, string hasParamList, + PathSegment x, string hasGenericArgList, string hasNameRef, string hasParenthesizedArgList, string hasPathType, string hasRetType, string hasReturnTypeSyntax, string hasTypeRepr where toBeTested(x) and not x.isUnknown() and (if x.hasGenericArgList() then hasGenericArgList = "yes" else hasGenericArgList = "no") and (if x.hasNameRef() then hasNameRef = "yes" else hasNameRef = "no") and - (if x.hasParamList() then hasParamList = "yes" else hasParamList = "no") and + ( + if x.hasParenthesizedArgList() + then hasParenthesizedArgList = "yes" + else hasParenthesizedArgList = "no" + ) and (if x.hasPathType() then hasPathType = "yes" else hasPathType = "no") and (if x.hasRetType() then hasRetType = "yes" else hasRetType = "no") and (if x.hasReturnTypeSyntax() then hasReturnTypeSyntax = "yes" else hasReturnTypeSyntax = "no") and if x.hasTypeRepr() then hasTypeRepr = "yes" else hasTypeRepr = "no" -select x, "hasGenericArgList:", hasGenericArgList, "hasNameRef:", hasNameRef, "hasParamList:", - hasParamList, "hasPathType:", hasPathType, "hasRetType:", hasRetType, "hasReturnTypeSyntax:", - hasReturnTypeSyntax, "hasTypeRepr:", hasTypeRepr +select x, "hasGenericArgList:", hasGenericArgList, "hasNameRef:", hasNameRef, + "hasParenthesizedArgList:", hasParenthesizedArgList, "hasPathType:", hasPathType, "hasRetType:", + hasRetType, "hasReturnTypeSyntax:", hasReturnTypeSyntax, "hasTypeRepr:", hasTypeRepr diff --git a/rust/ql/test/extractor-tests/generated/Path/PathSegment_getParenthesizedArgList.expected b/rust/ql/test/extractor-tests/generated/Path/PathSegment_getParenthesizedArgList.expected new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/rust/ql/test/extractor-tests/generated/Path/PathSegment_getParamList.ql b/rust/ql/test/extractor-tests/generated/Path/PathSegment_getParenthesizedArgList.ql similarity index 79% rename from rust/ql/test/extractor-tests/generated/Path/PathSegment_getParamList.ql rename to rust/ql/test/extractor-tests/generated/Path/PathSegment_getParenthesizedArgList.ql index 761c43ad8ec5..917567c100fa 100644 --- a/rust/ql/test/extractor-tests/generated/Path/PathSegment_getParamList.ql +++ b/rust/ql/test/extractor-tests/generated/Path/PathSegment_getParenthesizedArgList.ql @@ -4,4 +4,4 @@ import TestUtils from PathSegment x where toBeTested(x) and not x.isUnknown() -select x, x.getParamList() +select x, x.getParenthesizedArgList() diff --git a/rust/ql/test/extractor-tests/generated/Static/Static.ql b/rust/ql/test/extractor-tests/generated/Static/Static.ql index 3a632dabf47c..fa0776ca377c 100644 --- a/rust/ql/test/extractor-tests/generated/Static/Static.ql +++ b/rust/ql/test/extractor-tests/generated/Static/Static.ql @@ -4,8 +4,8 @@ import TestUtils from Static x, string hasExtendedCanonicalPath, string hasCrateOrigin, int getNumberOfAttrs, - string hasBody, string isMut, string isStatic, string hasName, string hasTypeRepr, - string hasVisibility + string hasBody, string isMut, string isStatic, string isUnsafe, string hasName, + string hasTypeRepr, string hasVisibility where toBeTested(x) and not x.isUnknown() and @@ -19,9 +19,11 @@ where (if x.hasBody() then hasBody = "yes" else hasBody = "no") and (if x.isMut() then isMut = "yes" else isMut = "no") and (if x.isStatic() then isStatic = "yes" else isStatic = "no") and + (if x.isUnsafe() then isUnsafe = "yes" else isUnsafe = "no") and (if x.hasName() then hasName = "yes" else hasName = "no") and (if x.hasTypeRepr() then hasTypeRepr = "yes" else hasTypeRepr = "no") and if x.hasVisibility() then hasVisibility = "yes" else hasVisibility = "no" select x, "hasExtendedCanonicalPath:", hasExtendedCanonicalPath, "hasCrateOrigin:", hasCrateOrigin, "getNumberOfAttrs:", getNumberOfAttrs, "hasBody:", hasBody, "isMut:", isMut, "isStatic:", - isStatic, "hasName:", hasName, "hasTypeRepr:", hasTypeRepr, "hasVisibility:", hasVisibility + isStatic, "isUnsafe:", isUnsafe, "hasName:", hasName, "hasTypeRepr:", hasTypeRepr, + "hasVisibility:", hasVisibility diff --git a/rust/ql/test/extractor-tests/generated/TypeBound/TypeBound.ql b/rust/ql/test/extractor-tests/generated/TypeBound/TypeBound.ql index ee0be38236ae..efd099905db9 100644 --- a/rust/ql/test/extractor-tests/generated/TypeBound/TypeBound.ql +++ b/rust/ql/test/extractor-tests/generated/TypeBound/TypeBound.ql @@ -3,15 +3,17 @@ import codeql.rust.elements import TestUtils from - TypeBound x, string hasGenericParamList, string isAsync, string isConst, string hasLifetime, - string hasTypeRepr + TypeBound x, string isAsync, string isConst, string hasLifetime, string hasTypeRepr, + string hasUseBoundGenericArgs where toBeTested(x) and not x.isUnknown() and - (if x.hasGenericParamList() then hasGenericParamList = "yes" else hasGenericParamList = "no") and (if x.isAsync() then isAsync = "yes" else isAsync = "no") and (if x.isConst() then isConst = "yes" else isConst = "no") and (if x.hasLifetime() then hasLifetime = "yes" else hasLifetime = "no") and - if x.hasTypeRepr() then hasTypeRepr = "yes" else hasTypeRepr = "no" -select x, "hasGenericParamList:", hasGenericParamList, "isAsync:", isAsync, "isConst:", isConst, - "hasLifetime:", hasLifetime, "hasTypeRepr:", hasTypeRepr + (if x.hasTypeRepr() then hasTypeRepr = "yes" else hasTypeRepr = "no") and + if x.hasUseBoundGenericArgs() + then hasUseBoundGenericArgs = "yes" + else hasUseBoundGenericArgs = "no" +select x, "isAsync:", isAsync, "isConst:", isConst, "hasLifetime:", hasLifetime, "hasTypeRepr:", + hasTypeRepr, "hasUseBoundGenericArgs:", hasUseBoundGenericArgs diff --git a/rust/ql/test/extractor-tests/generated/TypeBound/TypeBound_getUseBoundGenericArgs.expected b/rust/ql/test/extractor-tests/generated/TypeBound/TypeBound_getUseBoundGenericArgs.expected new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/rust/ql/test/extractor-tests/generated/TypeBound/TypeBound_getGenericParamList.ql b/rust/ql/test/extractor-tests/generated/TypeBound/TypeBound_getUseBoundGenericArgs.ql similarity index 79% rename from rust/ql/test/extractor-tests/generated/TypeBound/TypeBound_getGenericParamList.ql rename to rust/ql/test/extractor-tests/generated/TypeBound/TypeBound_getUseBoundGenericArgs.ql index ee3046476010..a265464633ee 100644 --- a/rust/ql/test/extractor-tests/generated/TypeBound/TypeBound_getGenericParamList.ql +++ b/rust/ql/test/extractor-tests/generated/TypeBound/TypeBound_getUseBoundGenericArgs.ql @@ -4,4 +4,4 @@ import TestUtils from TypeBound x where toBeTested(x) and not x.isUnknown() -select x, x.getGenericParamList() +select x, x.getUseBoundGenericArgs() diff --git a/rust/ql/test/extractor-tests/generated/UseBoundGenericArgs/MISSING_SOURCE.txt b/rust/ql/test/extractor-tests/generated/UseBoundGenericArgs/MISSING_SOURCE.txt new file mode 100644 index 000000000000..7f96b17b1f3c --- /dev/null +++ b/rust/ql/test/extractor-tests/generated/UseBoundGenericArgs/MISSING_SOURCE.txt @@ -0,0 +1,4 @@ +// generated by codegen, do not edit + +After a source file is added in this directory and codegen is run again, test queries +will appear and this file will be deleted diff --git a/rust/schema/ast.py b/rust/schema/ast.py index cb302e093150..2f7f3f4ab02b 100644 --- a/rust/schema/ast.py +++ b/rust/schema/ast.py @@ -2,6 +2,12 @@ from .prelude import * +class AsmOperand(AstNode): + pass + +class AsmPiece(AstNode): + pass + class AssocItem(AstNode): pass @@ -29,6 +35,9 @@ class Stmt(AstNode): class TypeRepr(AstNode): pass +class UseBoundGenericArg(AstNode): + pass + class Item(Stmt): pass @@ -47,9 +56,48 @@ class ArrayTypeRepr(TypeRepr): const_arg: optional["ConstArg"] | child element_type_repr: optional["TypeRepr"] | child +class AsmClobberAbi(AsmPiece): + pass + +class AsmConst(AsmOperand): + expr: optional["Expr"] | child + is_const: predicate + +class AsmDirSpec(AstNode): + pass + class AsmExpr(Expr): + asm_pieces: list["AsmPiece"] | child attrs: list["Attr"] | child - expr: optional["Expr"] | child + template: list["Expr"] | child + +class AsmLabel(AsmOperand): + block_expr: optional["BlockExpr"] | child + +class AsmOperandExpr(AstNode): + in_expr: optional["Expr"] | child + out_expr: optional["Expr"] | child + +class AsmOperandNamed(AsmPiece): + asm_operand: optional["AsmOperand"] | child + name: optional["Name"] | child + +class AsmOption(AstNode): + is_raw: predicate + +class AsmOptionsList(AsmPiece): + asm_options: list["AsmOption"] | child + +class AsmRegOperand(AsmOperand): + asm_dir_spec: optional["AsmDirSpec"] | child + asm_operand_expr: optional["AsmOperandExpr"] | child + asm_reg_spec: optional["AsmRegSpec"] | child + +class AsmRegSpec(AstNode): + name_ref: optional["NameRef"] | child + +class AsmSym(AsmOperand): + path: optional["Path"] | child class AssocItemList(AstNode): assoc_items: list["AssocItem"] | child @@ -296,7 +344,7 @@ class LetStmt(Stmt): pat: optional["Pat"] | child type_repr: optional["TypeRepr"] | child -class Lifetime(AstNode): +class Lifetime(UseBoundGenericArg): text: optional[string] class LifetimeArg(GenericArg): @@ -393,7 +441,7 @@ class Module(Item): class Name(AstNode): text: optional[string] -class NameRef(AstNode): +class NameRef(UseBoundGenericArg): text: optional[string] class NeverTypeRepr(TypeRepr): @@ -426,6 +474,9 @@ class ParenPat(Pat): class ParenTypeRepr(TypeRepr): type_repr: optional["TypeRepr"] | child +class ParenthesizedArgList(AstNode): + type_args: list["TypeArg"] | child + class Path(AstNode): qualifier: optional["Path"] | child part: optional["PathSegment"] | child @@ -440,7 +491,7 @@ class PathPat(Pat): class PathSegment(AstNode): generic_arg_list: optional["GenericArgList"] | child name_ref: optional["NameRef"] | child - param_list: optional["ParamList"] | child + parenthesized_arg_list: optional["ParenthesizedArgList"] | child path_type: optional["PathTypeRepr"] | child ret_type: optional["RetTypeRepr"] | child return_type_syntax: optional["ReturnTypeSyntax"] | child @@ -561,6 +612,7 @@ class Static(ExternItem,Item): body: optional["Expr"] | child is_mut: predicate is_static: predicate + is_unsafe: predicate name: optional["Name"] | child type_repr: optional["TypeRepr"] | child visibility: optional["Visibility"] | child @@ -640,11 +692,11 @@ class TypeArg(GenericArg): type_repr: optional["TypeRepr"] | child class TypeBound(AstNode): - generic_param_list: optional["GenericParamList"] | child is_async: predicate is_const: predicate lifetime: optional["Lifetime"] | child type_repr: optional["TypeRepr"] | child + use_bound_generic_args: optional["UseBoundGenericArgs"] | child class TypeBoundList(AstNode): bounds: list["TypeBound"] | child @@ -671,6 +723,9 @@ class Use(Item): use_tree: optional["UseTree"] | child visibility: optional["Visibility"] | child +class UseBoundGenericArgs(AstNode): + use_bound_generic_args: list["UseBoundGenericArg"] | child + class UseTree(AstNode): path: optional["Path"] | child rename: optional["Rename"] | child