mirror of
https://github.com/github/codeql.git
synced 2025-12-16 16:53:25 +01:00
Rust: make AssocItem and ExternItem subclasses of Item
This commit is contained in:
2
rust/extractor/src/generated/.generated.list
generated
2
rust/extractor/src/generated/.generated.list
generated
@@ -1,2 +1,2 @@
|
||||
mod.rs 4bcb9def847469aae9d8649461546b7c21ec97cf6e63d3cf394e339915ce65d7 4bcb9def847469aae9d8649461546b7c21ec97cf6e63d3cf394e339915ce65d7
|
||||
top.rs d80090945fca0c60a08bee4c904b376f5c164a5df6c632c11d744a3c7926be31 d80090945fca0c60a08bee4c904b376f5c164a5df6c632c11d744a3c7926be31
|
||||
top.rs 409eb2e5fb18cb360a7d255fc2d7926a78bcd2d3c9f8dcdfce0419cea49d1489 409eb2e5fb18cb360a7d255fc2d7926a78bcd2d3c9f8dcdfce0419cea49d1489
|
||||
|
||||
1386
rust/extractor/src/generated/top.rs
generated
1386
rust/extractor/src/generated/top.rs
generated
File diff suppressed because it is too large
Load Diff
@@ -164,23 +164,6 @@ impl Emission<ast::MacroCall> for Translator<'_> {
|
||||
self.extract_macro_call_expanded(node, label);
|
||||
}
|
||||
}
|
||||
// TODO: remove the manually written Label conversions. These can be auto-generated by
|
||||
// ch
|
||||
// anging the base class of AssocItem from AstNode to Item
|
||||
impl From<Label<generated::AssocItem>> for Label<generated::Item> {
|
||||
fn from(value: Label<generated::AssocItem>) -> Self {
|
||||
// SAFETY: this is safe because every concrete instance of `@assoc_item` is also an instance of `@item`
|
||||
unsafe { Self::from_untyped(value.as_untyped()) }
|
||||
}
|
||||
}
|
||||
// TODO: remove the manually written Label conversions. These can be auto-generated by
|
||||
// changing the base class of ExternItem from AstNode to Item
|
||||
impl From<Label<generated::ExternItem>> for Label<generated::Item> {
|
||||
fn from(value: Label<generated::ExternItem>) -> Self {
|
||||
// SAFETY: this is safe because every concrete instance of `@extern_item` is also an instance of `@item`
|
||||
unsafe { Self::from_untyped(value.as_untyped()) }
|
||||
}
|
||||
}
|
||||
|
||||
// see https://github.com/tokio-rs/tracing/issues/2730
|
||||
macro_rules! dispatch_to_tracing {
|
||||
|
||||
34
rust/ql/.generated.list
generated
34
rust/ql/.generated.list
generated
@@ -21,7 +21,7 @@ lib/codeql/rust/elements/AsmPiece.qll 8650bf07246fac95533876db66178e4b30ed3210de
|
||||
lib/codeql/rust/elements/AsmRegOperand.qll 27abfffe1fc99e243d9b915f9a9694510133e5f72100ec0df53796d27a45de0c 8919ab83081dae2970adb6033340c6a18751ffd6a8157cf8c55916ac4253c791
|
||||
lib/codeql/rust/elements/AsmRegSpec.qll 77483fc3d1de8761564e2f7b57ecf1300d67de50b66c11144bb4e3e0059ebfd6 521f8dd0af859b7eef6ab2edab2f422c9ff65aa11bad065cfba2ec082e0c786b
|
||||
lib/codeql/rust/elements/AsmSym.qll ba29b59ae2a4aa68bdc09e61b324fd26e8b7e188af852345676fc5434d818eef 10ba571059888f13f71ac5e75d20b58f3aa6eecead0d4c32a7617018c7c72e0e
|
||||
lib/codeql/rust/elements/AssocItem.qll 89e547c3ce2f49b5eb29063c5d9263a52810838a8cfb30b25bee108166be65a1 238fc6f33c18e02ae023af627afa2184fa8e6055d78ab0936bd1b6180bccb699
|
||||
lib/codeql/rust/elements/AssocItem.qll 7a65365df8ae0603f892b6d9a27372ad81d06945abd408a2f25a6595a6ea3b6e 24bc6dd8485bcd7d236067cb37bda1300a891009d0a739681aee218449304ed2
|
||||
lib/codeql/rust/elements/AssocItemList.qll 5d2660e199e59647e3a8b6234531428f6e0a236ed2ced3c9fede13e7f83a5ba5 a2a8e87ab8978f77a70e4c0a8cc7322c522fc4a7a05116646a2b97a2f47428a4
|
||||
lib/codeql/rust/elements/AssocTypeArg.qll 6ceeec7a0ec78a6f8b2e74c0798d4727ad350cebde954b4ffe442b06e08eb4aa d615f5cd696892518387d20f04dae240fb10ee7c9577028fb6f2a51cd9f5b9e4
|
||||
lib/codeql/rust/elements/AstNode.qll 5ee6355afb1cafd6dfe408b8c21836a1ba2aeb709fb618802aa09f9342646084 dee708f19c1b333cbd9609819db3dfdb48a0c90d26266c380f31357b1e2d6141
|
||||
@@ -39,7 +39,7 @@ lib/codeql/rust/elements/CastExpr.qll 2fe1f36ba31fa29de309baf0a665cfcae67b61c733
|
||||
lib/codeql/rust/elements/ClosureBinder.qll 02c8e83bf07deaf7bf0233b76623ec7f1837be8b77fe7e1c23544edc7d85e3c4 2b114d9a6dede694324aebe3dac80a802d139cfacd39beb0f12b5b0a46ee6390
|
||||
lib/codeql/rust/elements/ClosureExpr.qll 67e2a106e9154c90367b129987e574d2a9ecf5b297536627e43706675d35eaed d6a381132ddd589c5a7ce174f50f9620041ddf690e15a65ebfb05ff7e7c02de7
|
||||
lib/codeql/rust/elements/Comment.qll fedad50575125e9a64a8a8776a8c1dbf1e76df990f01849d9f0955f9d74cb2a6 8eb1afad1e1007a4f0090fdac65d81726b23eda6517d067fd0185f70f17635ab
|
||||
lib/codeql/rust/elements/Const.qll fd2959d036f47fabcbde9a21c3e173b105168f4944c3cea7c3e8ba4c1f5d6052 c3bde2a8ce4425bd2e20a8a9f96ecf049747935b99a10d35b29ba942e8e44e63
|
||||
lib/codeql/rust/elements/Const.qll 5f4d11e01162a06127ba56519efd66d1ecfb5de7c1792fc1c283a56cf2127373 8c618ac774267d25db70cc05a080f8a408dc23ab7e88c0fc543eda8b4d4cb995
|
||||
lib/codeql/rust/elements/ConstArg.qll 01865b3be4790c627a062c59ea608462931abcb2f94a132cf265318664fd1251 a2c6bbf63dbfa999e511b6941143a51c9392477d8ccd25e081f85475936ff558
|
||||
lib/codeql/rust/elements/ConstBlockPat.qll a25f42b84dbeb33e10955735ef53b8bb7e3258522d6d1a9068f19adaf1af89d9 eeb816d2b54db77a1e7bb70e90b68d040a0cd44e9d44455a223311c3615c5e6e
|
||||
lib/codeql/rust/elements/ConstParam.qll 87776586f7ff562ff3c71373f45cf70486f9a832613a0aaac943311c451cc057 67a31616688106d5130951f2162e5229bff0fde08ff647943663cac427d7048b
|
||||
@@ -52,7 +52,7 @@ lib/codeql/rust/elements/Expr.qll e5d65e805ccf440d64d331e55df4c4144ab8c8f63f3673
|
||||
lib/codeql/rust/elements/ExprStmt.qll 00ac4c7d0192b9e8b0f28d5ae59c27729ff5a831ca11938ea3e677a262337a64 7cc02aa5346cd7c50d75ca63cd6501097b0a3979eb2ed838adff114fe17d35a3
|
||||
lib/codeql/rust/elements/ExternBlock.qll 96c70d0761ec385fe17aa7228e15fd1711949d5abba5877a1c2f4c180d202125 38ad458868a368d437b2dda44307d788a85c887f45ea76c99adbfc9a53f14d81
|
||||
lib/codeql/rust/elements/ExternCrate.qll 776cf8ef7e6611ebb682f20bb8cf47b24cc8fe08ba0b0cf892c19c95a1ecec3e 1a74eb2974d93c1a8beb9a4f5e3432bb50b6bcdd6e450d1f966534edbdff9cd0
|
||||
lib/codeql/rust/elements/ExternItem.qll 0d895c2c37f64237b23542a84033fed81a23d732e1cb8c109aa18ecde67bf959 56087151b9461253a6ecc50e165c7e32eca70af334bfc1b884a230302721c2b3
|
||||
lib/codeql/rust/elements/ExternItem.qll 24301f14e9b7dda6eb5263ba46ae806eedd5901c114399e712a86164b8f03002 0cbb368952bda103c75eba504a7f2840da7d9d17bd64e087184055de2fa6f862
|
||||
lib/codeql/rust/elements/ExternItemList.qll eceb0fcd3a6f9d87fa044da1da112ce96b75c8e0f0897d51e44c5822a3e430dc 2255f1121d7cec4e29401ad08b728f02a920a82da48f16b6bb86c5056775be31
|
||||
lib/codeql/rust/elements/FieldExpr.qll 8102cd659f9059cf6af2a22033cfcd2aae9c35204b86f7d219a05f1f8de54b3b f818169dddf5102095ae1410583615f80031376a08b5307d0c464e79953c3975
|
||||
lib/codeql/rust/elements/FieldList.qll 72f3eace2f0c0600b1ad059819ae756f1feccd15562e0449a3f039a680365462 50e4c01df7b801613688b06bb47ccc36e6c8c7fa2e50cc62cb4705c9abf5ee31
|
||||
@@ -64,7 +64,7 @@ lib/codeql/rust/elements/FormatArgsArg.qll a2c23cd512d44dd60b7d65eba52cc3adf6e2f
|
||||
lib/codeql/rust/elements/FormatArgsExpr.qll 8127cbe4082f7acc3d8a05298c2c9bea302519b8a6cd2d158a83c516d18fc487 88cf9b3bedd69a1150968f9a465c904bbb6805da0e0b90cfd1fc0dab1f6d9319
|
||||
lib/codeql/rust/elements/FormatArgument.qll f6fe17ee1481c353dd42edae8b5fa79aeb99dff25b4842ec9a6f267b1837d1e3 5aed19c2daf2383b89ad7fd527375641cff26ddee7afddb89bc0d18d520f4034
|
||||
lib/codeql/rust/elements/FormatTemplateVariableAccess.qll ff3218a1dda30c232d0ecd9d1c60bbb9f3973456ef0bee1d1a12ad14b1e082b5 e4316291c939800d8b34d477d92be9404a30d52b7eee37302aef3d3205cf4ae0
|
||||
lib/codeql/rust/elements/Function.qll 61fafe4bc91c997e9fb64f2770fc6682d333c61df3283fac58163df14a500430 ca7cb756942ccd01f961f3e959c7fddabeaabb72c4226ca756a6a30a4b1a4c48
|
||||
lib/codeql/rust/elements/Function.qll a5d1654003137bcfd5b0bdfaf73778f6316521dd896aaa58b95422f795e2d674 e13ad1cc560525d94917fb5a0c9605e022d3f2e33042933a1c7141556ca75ce8
|
||||
lib/codeql/rust/elements/GenericArg.qll 5f8666af395208f8ad2044063788fa2c0c317cc0201d1ffc8c6ade62da82867c 174025826d3f4d6bf714be043acfea323701988bae134bd5a8b908b1ba1d3850
|
||||
lib/codeql/rust/elements/GenericArgList.qll dcf274db517b0e8f19e4545d77f86cdd4066ff2805e68c808d0bb5750b49f569 1055a82929e850264e501b367ef4d314a3e6bb8943ec95f4284d157fb4d0092f
|
||||
lib/codeql/rust/elements/GenericParam.qll 87adf96aac385f2a182008a7b90aad46cf46d70134364123871afb43e5ea2590 be82f1986b263053d7b894a8998ddb59543200a2aa8df5a44c217b8773f60307
|
||||
@@ -91,7 +91,7 @@ lib/codeql/rust/elements/Locatable.qll 2855efa4a469b54e0ca85daa89309a8b991cded6f
|
||||
lib/codeql/rust/elements/LoopExpr.qll ee171177650fa23eef102a9580765f4b6073a1cc41bab1ec31ad4f84ffe6c2c9 bfcf0cca4dc944270d9748a202829a38c64dfae167c0d3a4202788ceb9daf5f6
|
||||
lib/codeql/rust/elements/LoopingExpr.qll 7ad7d4bbfd05adc0bb9b4ca90ff3377b8298121ca5360ffb45d5a7a1e20fe37a 964168b2045ee9bad827bba53f10a64d649b3513f2d1e3c17a1b1f11d0fc7f3a
|
||||
lib/codeql/rust/elements/MacroBlockExpr.qll fb81f067a142053b122e2875a15719565024cfb09326faf12e0f1017307deb58 3ee94ef7e56bd07a8f9304869b0a7b69971b02abbee46d0bebcacb4031760282
|
||||
lib/codeql/rust/elements/MacroCall.qll 7e456de5b506ea6d4ca20a55f75734ede9202f31529c111df3ed3eab1a9b83e5 cc0f45aaeaab4d32ad133c18ad8000316cbcfa62062bd31b6a0e690df7bb76bc
|
||||
lib/codeql/rust/elements/MacroCall.qll 452aee152b655cdd5a69bf973977072f000a6451f626469a3f7313f0468ffc18 a8652d0de1c6c2118d683d5465ba4115dd4c65031896440269a2a0522d90fceb
|
||||
lib/codeql/rust/elements/MacroDef.qll 5bcf2bba7ba40879fe47370bfeb65b23c67c463be20535327467338a1e2e04bb c3d28416fc08e5d79149fccd388fea2bc3097bce074468a323383056404926db
|
||||
lib/codeql/rust/elements/MacroExpr.qll 640554f4964def19936a16ce88a03fb12f74ec2bcfe38b88d32742b79f85d909 a284fb66e012664a33a4e9c8fd3e38d3ffd588fccd6b16b02270da55fc025f7a
|
||||
lib/codeql/rust/elements/MacroItems.qll f2d80ff23634ac6bc3e96e8d73154587f9d24edb56654b5c0ae426124d2709ea f794f751b77fc50d7cc3069c93c22dd3a479182edce15c1b22c8da31d2e30a12
|
||||
@@ -143,7 +143,7 @@ lib/codeql/rust/elements/SelfParam.qll e36b54cdc57529935910b321c336783e9e2662c76
|
||||
lib/codeql/rust/elements/SlicePat.qll f48f13bb13378cc68f935d5b09175c316f3e81f50ef6a3ac5fdbfbfb473d6fc1 4c8df0b092274f37028e287a949f1a287f7505b7c2c36ee8d5f47fb8365d278a
|
||||
lib/codeql/rust/elements/SliceTypeRepr.qll 730e4d0eeefb9b2284e15b41cd0afc3cbe2556120484df424c8e5242afd852f9 100772263b08f498ce8db203ba572be4e92edd361df7c0e9bd7b20c7ac2820fb
|
||||
lib/codeql/rust/elements/SourceFile.qll 0b6a3e58767c07602b19975009a2ad53ecf1fd721302af543badb643c1fbb6c4 511d5564aab70b1fcd625e07f3d7e3ceb0c4811a5740de64a55a9a728ba8d32c
|
||||
lib/codeql/rust/elements/Static.qll a6d73152ddecb53a127aa3a4139f97007cd77b46203691c287600aa7200b8beb 547197e794803b3ea0c0e220f050980adec815a16fdef600f98ff795aa77f677
|
||||
lib/codeql/rust/elements/Static.qll 9dca6d4fb80fb4ead49a3de89bec2b02bae6f96fbc2601dde35a2aa69a9bfdb0 70f67bc75d7799dab04ea7a7fd13286bb76bbe514be16d23149c59dfb31fd0c9
|
||||
lib/codeql/rust/elements/Stmt.qll 532b12973037301246daf7d8c0177f734202f43d9261c7a4ca6f5080eea8ca64 b838643c4f2b4623d2c816cddad0e68ca3e11f2879ab7beaece46f489ec4b1f3
|
||||
lib/codeql/rust/elements/StmtList.qll e874859ce03672d0085e47e0ca5e571b92b539b31bf0d5a8802f9727bef0c6b0 e5fe83237f713cdb57c446a6e1c20f645c2f49d9f5ef2c984032df83acb3c0de
|
||||
lib/codeql/rust/elements/Struct.qll 297d3ea732fc7fbb8b8fb5479c1873ce84705146853ff752c84a6f70af12b923 3df0e5fd50a910a0b5611c3a860a1d7c318f6925c3a0727006d91840caf04812
|
||||
@@ -166,7 +166,7 @@ lib/codeql/rust/elements/TupleFieldList.qll b67cd2dec918d09e582467e5db7a38c8fa18
|
||||
lib/codeql/rust/elements/TuplePat.qll 028cdea43868b0fdd2fc4c31ff25b6bbb40813e8aaccf72186051a280db7632e 38c56187971671e6a9dd0c6ccccb2ee4470aa82852110c6b89884496eb4abc64
|
||||
lib/codeql/rust/elements/TupleStructPat.qll da398a23eb616bf7dd586b2a87f4ab00f28623418f081cd7b1cc3de497ef1819 6573bf3f8501c30af3aeb23d96db9f5bea7ab73e2b7ef3473095c03e96c20a5c
|
||||
lib/codeql/rust/elements/TupleTypeRepr.qll 1ac5abf6281ea31680a4098407fbe55459d08f92a50dec20d1f8b93d498eee41 6d9625cce4e4abf6b6e6c22e47880fbd23740d07b621137bd7fa0a2ee13badd9
|
||||
lib/codeql/rust/elements/TypeAlias.qll 7c06232b50df4b6d9066e18a7286f6f0986df6b3994838923c3b2cd0898bb937 d4e61091e396b6cbbfbc9731a58154d81ef986ccf0f306e64962661c468b2889
|
||||
lib/codeql/rust/elements/TypeAlias.qll b59f24488f0d7de8d4046a9e0ca1e1f54d1d5c11e035898b11ab97e151fc600f 7b25c9e14c8bb310cec796824904fcefced2cc486d55e981b80b7620e73dd2d7
|
||||
lib/codeql/rust/elements/TypeArg.qll e91dbb399d2ab7cf7af9dd5f743a551d0bf91dba3cfb76cea9e2d42ada0f9f2e c67d64e20e35a9bba5092651e0f82c75ba53b8c165e823bc81d67975107ae375
|
||||
lib/codeql/rust/elements/TypeBound.qll a1645f31a789995af85b1db236caece180013cc2e28e1c50b792dc0d4ab0854e 14a68ebef2149bc657ba1f18606ef8cf9b7cc3e6113b50bc038c168eb6cfd11c
|
||||
lib/codeql/rust/elements/TypeBoundList.qll 61a861e89b3de23801c723531cd3331a61214817a230aaae74d91cb60f0e096f d54e3d830bb550c5ba082ccd09bc0dc4e6e44e8d11066a7afba5a7172aa687a8
|
||||
@@ -480,7 +480,7 @@ lib/codeql/rust/elements/internal/generated/AsmPiece.qll 17f425727781cdda3a2ec59
|
||||
lib/codeql/rust/elements/internal/generated/AsmRegOperand.qll e1412c7a9135669cb3e07f82dcf2bebc2ea28958d9ffb9520ae48d299344997c d81f18570703c9eb300241bd1900b7969d12d71cec0a3ce55c33f7d586600c24
|
||||
lib/codeql/rust/elements/internal/generated/AsmRegSpec.qll 73a24744f62dd6dfa28a0978087828f009fb0619762798f5e0965003fff1e8ec fdb8fd2f89b64086a2ca873c683c02a68d088bb01007d534617d0b7f67fde2cb
|
||||
lib/codeql/rust/elements/internal/generated/AsmSym.qll 476ee9ad15db015c43633072175bca3822af30c379ee10eb8ffc091c88d573f6 9f24baf36506eb959e9077dc5ba1cddbc4d93e3d8cba6e357dff5f9780d1e492
|
||||
lib/codeql/rust/elements/internal/generated/AssocItem.qll fad035ba1dab733489690538fbb94ac85072b96b6c2f3e8bcd58a129b9707a26 d9988025b12b8682be83ce9df8c31ce236214683fc50facd4a658f68645248cb
|
||||
lib/codeql/rust/elements/internal/generated/AssocItem.qll 188fd2aaaef11cc926cf202adc64f294988fe2b3ec768d586d260c23877bbe21 58332ddaeff27fa80ce329d3964f4cc05f2cc807eb2a7a4cd6c26e90442e7f3a
|
||||
lib/codeql/rust/elements/internal/generated/AssocItemList.qll 52900dcf32ef749a3bd285b4a01ff337df3c52255fe2698c9c1547c40652f3b9 10709dd626a527c37186b02c4ea738a9edb6c9e97b87370de206d3eb9941575b
|
||||
lib/codeql/rust/elements/internal/generated/AssocTypeArg.qll a93a42278263bb0c9692aca507108e25f99292aef2a9822501b31489c4ce620d afd9559e0c799988ef7ff1957a5a9ebc4fb92c6e960cbe7fecf12a0a484fef08
|
||||
lib/codeql/rust/elements/internal/generated/AstNode.qll 1cbfae6a732a1de54b56669ee69d875b0e1d15e58d9aa621df9337c59db5619d 37e16a0c70ae69c5dc1b6df241b9acca96a6326d6cca15456699c44a81c93666
|
||||
@@ -498,7 +498,7 @@ lib/codeql/rust/elements/internal/generated/CastExpr.qll ddc20054b0b339ad4d40298
|
||||
lib/codeql/rust/elements/internal/generated/ClosureBinder.qll ab199df96f525a083a0762fd654cd098802033c79700a593bb204a9a0c69ec01 86b33543e0886715830cfcdaca43b555a242a4f12a4caa18b88732d5afb584bd
|
||||
lib/codeql/rust/elements/internal/generated/ClosureExpr.qll 34149bf82f107591e65738221e1407ec1dc9cc0dfb10ae7f761116fda45162de fd2fbc9a87fc0773c940db64013cf784d5e4137515cc1020e2076da329f5a952
|
||||
lib/codeql/rust/elements/internal/generated/Comment.qll cd1ef861e3803618f9f78a4ac00516d50ecfecdca1c1d14304dc5327cbe07a3b 8b67345aeb15beb5895212228761ea3496297846c93fd2127b417406ae87c201
|
||||
lib/codeql/rust/elements/internal/generated/Const.qll e923b540d1dc26cc59766ecd938b8e18f3c73097a73eeaeed3513c8fca7ac3a8 2261a0c46f4252124c40600e7fb2e5743f0e66d58cedc5768fe57393191a9504
|
||||
lib/codeql/rust/elements/internal/generated/Const.qll 3e606f0198b6461a94964dba7a4d386408f01651d75378eeab251dfceccf49c8 20fe276cded4764bdb1cd50de956bea88d7cd731909c0b84b4abb972b3094959
|
||||
lib/codeql/rust/elements/internal/generated/ConstArg.qll c52bf746f2dc89b8d71b8419736707bfcbb09cca424c3ba76e888e2add415bf6 89309a9df4fde23cfd3d8492908ccec4d90cc8457d35c507ef81371a369941b4
|
||||
lib/codeql/rust/elements/internal/generated/ConstBlockPat.qll 7526d83ee9565d74776f42db58b1a2efff6fb324cfc7137f51f2206fee815d79 0ab3c22908ff790e7092e576a5df3837db33c32a7922a513a0f5e495729c1ac5
|
||||
lib/codeql/rust/elements/internal/generated/ConstParam.qll 2e24198f636e4932c79f28c324f395ae5f61f713795ed4543e920913898e2815 5abe6d3df395c679c28a7720479bad455c53bc5ade9133f1ff113ea54dc66c11
|
||||
@@ -511,7 +511,7 @@ lib/codeql/rust/elements/internal/generated/Expr.qll 5fa34f2ed21829a1509417440da
|
||||
lib/codeql/rust/elements/internal/generated/ExprStmt.qll d1112230015fbeb216b43407a268dc2ccd0f9e0836ab2dca4800c51b38fa1d7d 4a80562dcc55efa5e72c6c3b1d6747ab44fe494e76faff2b8f6e9f10a4b08b5b
|
||||
lib/codeql/rust/elements/internal/generated/ExternBlock.qll e7faac92297a53ac6e0420eec36255a54f360eeb962bf663a00da709407832dd 5ff32c54ec7097d43cc3311492090b9b90f411eead3bc849f258858f29405e81
|
||||
lib/codeql/rust/elements/internal/generated/ExternCrate.qll f1a64a1c2f5b07b1186c6259374251d289e59e2d274e95a2ecff7c70e7cbe799 fd9b5b61d49121f54dd739f87efaea1a37c5f438c8e98290b1227223808e24c5
|
||||
lib/codeql/rust/elements/internal/generated/ExternItem.qll d069798a4d11ec89750aea0c7137b0ccf1e7e15572871f0ea69ef26865a93a5e 92d4c613bdca802a2e9220e042d69cd5f4e8e151200a8b45b1dc333cc9d8a5c9
|
||||
lib/codeql/rust/elements/internal/generated/ExternItem.qll 08c02dbc8a96df25725ccec69ef5e19089ae03faea2efb86be892077ea1bc8ab 8afe7b6a87445dde4ce2c790ad05c2ccf771996d10625e6fc100113f219e8e32
|
||||
lib/codeql/rust/elements/internal/generated/ExternItemList.qll cb3ec330f70b760393af8ca60929ad5cca2f3863f7655d3f144719ab55184f33 e6829b21b275c7c59f27056501fee7a2d3462ed6a6682d9b37d3c0f0f11d16b8
|
||||
lib/codeql/rust/elements/internal/generated/ExtractorStep.qll 61cd504a1aab98b1c977ee8cff661258351d11ca1fec77038c0a17d359f5810e 5e57b50f3e8e3114a55159fb11a524c6944363f5f8a380abccc8b220dedc70ca
|
||||
lib/codeql/rust/elements/internal/generated/FieldExpr.qll d6077fcc563702bb8d626d2fda60df171023636f98b4a345345e131da1a03dfc 03f9eb65abfab778e6d2c7090c08fe75c38c967302f5a9fa96ab0c24e954929d
|
||||
@@ -524,7 +524,7 @@ lib/codeql/rust/elements/internal/generated/FormatArgsArg.qll c762a4af8609472e28
|
||||
lib/codeql/rust/elements/internal/generated/FormatArgsExpr.qll 8aed8715a27d3af3de56ded4610c6792a25216b1544eb7e57c8b0b37c14bd9c1 590a2b0063d2ecd00bbbd1ce29603c8fd69972e34e6daddf309c915ce4ec1375
|
||||
lib/codeql/rust/elements/internal/generated/FormatArgument.qll cd05153276e63e689c95d5537fbc7d892615f62e110323759ef02e23a7587407 be2a4531b498f01625effa4c631d51ee8857698b00cfb829074120a0f2696d57
|
||||
lib/codeql/rust/elements/internal/generated/FormatTemplateVariableAccess.qll a6175214fad445df9234b3ee9bf5147da75baf82473fb8d384b455e3add0dac1 a928db0ff126b2e54a18f5c488232abd1bd6c5eda24591d3c3bb80c6ee71c770
|
||||
lib/codeql/rust/elements/internal/generated/Function.qll befc4220bef166531e52625b08642f129115ae918a70021d69874dc794e41be7 e6433f67000eb5f3e02b209d7ee8018fea30abed9e7c491fa1fbbd9d998e98ae
|
||||
lib/codeql/rust/elements/internal/generated/Function.qll 695dbc61e1c4d67a75e438f30fffcaa4a251be629093428b6b7afba053342fb6 ddc34f1da6b4b2ac64d60028822c7cfc72da133dd08ad2490bd2dcae9d91e074
|
||||
lib/codeql/rust/elements/internal/generated/GenericArg.qll 908dadf36a631bc9f4423ab473d1344ed882c7f3f85ac169d82e0099ff6337d4 c6ef5358db3a0318987962a51cbe6b77ae9c0e39c1312a059306e40e86db7eb8
|
||||
lib/codeql/rust/elements/internal/generated/GenericArgList.qll b8cd936bba6f28344e28c98acf38acb8ef43af6ecf8367d79ed487e5b9da17cb 8b14331261e49d004807285b02fca190aafd62bfb9378b05c7d9c1e95525fe7b
|
||||
lib/codeql/rust/elements/internal/generated/GenericParam.qll 85ac027a42b3300febc9f7ede1098d3ffae7bac571cba6391bc00f9061780324 806cb9d1b0e93442bef180e362c4abc055ab31867ff34bac734b89d32bd82aa1
|
||||
@@ -551,7 +551,7 @@ lib/codeql/rust/elements/internal/generated/Locatable.qll c897dc1bdd4dfcb6ded83a
|
||||
lib/codeql/rust/elements/internal/generated/LoopExpr.qll db6bc87e795c9852426ec661fa2c2c54106805897408b43a67f5b82fb4657afd 1492866ccf8213469be85bbdbcae0142f4e2a39df305d4c0d664229ecd1ebdb9
|
||||
lib/codeql/rust/elements/internal/generated/LoopingExpr.qll 0792c38d84b8c68114da2bbdfef32ef803b696cb0fd06e10e101756d5c46976c 111fe961fad512722006323c3f2a075fddf59bd3eb5c7afc349835fcec8eb102
|
||||
lib/codeql/rust/elements/internal/generated/MacroBlockExpr.qll 778376cdfa4caaa9df0b9c21bda5ff0f1037b730aa43efb9fb0a08998ef3999b 6df39efe7823ce590ef6f4bdfa60957ba067205a77d94ac089b2c6a7f6b7b561
|
||||
lib/codeql/rust/elements/internal/generated/MacroCall.qll 74501c9687d6f216091d8cd3033613cd5f5c4aedbf75b594a2e2d1e438a74445 1de4d8bec211a7b1b12ff21505e17a4c381ccfa8f775049e2a6c8b3616efa993
|
||||
lib/codeql/rust/elements/internal/generated/MacroCall.qll 1a7ee9c782ebc9ab0a807762aabebc9e0a7ef10c6eb945679737598630b20af2 782a437654cb316355c020e89d50b07c93ba7817715fa5d42a9e807cf12d1a43
|
||||
lib/codeql/rust/elements/internal/generated/MacroDef.qll 90393408d9e10ff6167789367c30f9bfe1d3e8ac3b83871c6cb30a8ae37eef47 f022d1df45bc9546cb9fd7059f20e16a3acfaae2053bbd10075fe467c96e2379
|
||||
lib/codeql/rust/elements/internal/generated/MacroExpr.qll 5a86ae36a28004ce5e7eb30addf763eef0f1c614466f4507a3935b0dab2c7ce3 11c15e8ebd36455ec9f6b7819134f6b22a15a3644678ca96b911ed0eb1181873
|
||||
lib/codeql/rust/elements/internal/generated/MacroItems.qll bf10b946e9addb8dd7cef032ebc4480492ab3f9625edbabe69f41dcb81d448fe f6788fe1022e1d699056111d47e0f815eb1fa2826c3b6a6b43c0216d82d3904b
|
||||
@@ -578,7 +578,7 @@ lib/codeql/rust/elements/internal/generated/ParamList.qll eaa0cd4402d3665013d47e
|
||||
lib/codeql/rust/elements/internal/generated/ParenExpr.qll 812d2ff65079277f39f15c084657a955a960a7c1c0e96dd60472a58d56b945eb eb8c607f43e1fcbb41f37a10de203a1db806690e10ff4f04d48ed874189cb0eb
|
||||
lib/codeql/rust/elements/internal/generated/ParenPat.qll 24f9dc7fce75827d6fddb856cd48f80168143151b27295c0bab6db5a06567a09 ebadbc6f5498e9ed754b39893ce0763840409a0721036a25b56e1ead7dcc09aa
|
||||
lib/codeql/rust/elements/internal/generated/ParenTypeRepr.qll 03f5c5b96a37adeb845352d7fcea3e098da9050e534972d14ac0f70d60a2d776 ed3d6e5d02086523087adebce4e89e35461eb95f2a66d1d4100fe23fc691b126
|
||||
lib/codeql/rust/elements/internal/generated/ParentChild.qll ff51da9dd3d1f739057f764f46244fb361c950bf7d1f61007e33d92581ec45e1 bebe239202e79d5a31e29f42f5e9d88139cf07e0fb2541fdd95b8e65154d2776
|
||||
lib/codeql/rust/elements/internal/generated/ParentChild.qll 3657258593982c34cb5934cf51fe21a0749af3161890b43c20f2b327d89ecf77 83509d01d5735e297057327be7fbb837a4633604cf6641ba34bb4825798187da
|
||||
lib/codeql/rust/elements/internal/generated/ParenthesizedArgList.qll d901fdc8142a5b8847cc98fc2afcfd16428b8ace4fbffb457e761b5fd3901a77 5dbb0aea5a13f937da666ccb042494af8f11e776ade1459d16b70a4dd193f9fb
|
||||
lib/codeql/rust/elements/internal/generated/Pat.qll 3605ac062be2f294ee73336e9669027b8b655f4ad55660e1eab35266275154ee 7f9400db2884d336dd1d21df2a8093759c2a110be9bf6482ce8e80ae0fd74ed4
|
||||
lib/codeql/rust/elements/internal/generated/Path.qll 9b12afb46fc5a9ad3a811b05472621bbecccb900c47504feb7f29d96b28421ca bcacbffc36fb3e0c9b26523b5963af0ffa9fd6b19f00a2a31bdb2316071546bd
|
||||
@@ -593,7 +593,7 @@ lib/codeql/rust/elements/internal/generated/PtrTypeRepr.qll 8d0ea4f6c7f8203340bf
|
||||
lib/codeql/rust/elements/internal/generated/PureSynthConstructors.qll e5b8e69519012bbaae29dcb82d53f7f7ecce368c0358ec27ef6180b228a0057f e5b8e69519012bbaae29dcb82d53f7f7ecce368c0358ec27ef6180b228a0057f
|
||||
lib/codeql/rust/elements/internal/generated/RangeExpr.qll 23cca03bf43535f33b22a38894f70d669787be4e4f5b8fe5c8f7b964d30e9027 18624cef6c6b679eeace2a98737e472432e0ead354cca02192b4d45330f047c9
|
||||
lib/codeql/rust/elements/internal/generated/RangePat.qll 80826a6a6868a803aa2372e31c52a03e1811a3f1f2abdb469f91ca0bfdd9ecb6 34ee1e208c1690cba505dff2c588837c0cd91e185e2a87d1fe673191962276a9
|
||||
lib/codeql/rust/elements/internal/generated/Raw.qll 3a9cae2d26ce5ceda0e76fccdcd92450a7605a68e3206c8a40e04c7052feac5a 10857ddd4f6b2ddb53de01200640de30982e8b67d25161e7335c53309d7aa3c5
|
||||
lib/codeql/rust/elements/internal/generated/Raw.qll f5b37458fb9c16829da761323deab22b440c3cb5bf915e07ee3eb2315251020e 0198c8d6ac310f107e4685f6dc0bd2eb58800af41ab4ac4c15c42d8d575f4b0a
|
||||
lib/codeql/rust/elements/internal/generated/RefExpr.qll 7d995884e3dc1c25fc719f5d7253179344d63650e217e9ff6530285fe7a57f64 f2c3c12551deea4964b66553fb9b6423ee16fec53bd63db4796191aa60dc6c66
|
||||
lib/codeql/rust/elements/internal/generated/RefPat.qll 456ede39837463ee22a630ec7ab6c8630d3664a8ea206fcc6e4f199e92fa564c 5622062765f32930465ba6b170e986706f159f6070f48adee3c20e24e8df4e05
|
||||
lib/codeql/rust/elements/internal/generated/RefTypeRepr.qll 5b0663a6d234572fb3e467e276d019415caa95ef006438cc59b7af4e1783161e 0e27c8a8f0e323c0e4d6db01fca821bf07c0864d293cdf96fa891b10820c1e4b
|
||||
@@ -607,7 +607,7 @@ lib/codeql/rust/elements/internal/generated/SelfParam.qll 076c583f7f34e29aaaf331
|
||||
lib/codeql/rust/elements/internal/generated/SlicePat.qll 722b1bd47a980ac9c91d018133b251c65ee817682e06708ad130031fbd01379b 7e0ce13b9de2040d2ef9d0948aab3f39e5fdc28d38c40bfbee590e2125dbe41c
|
||||
lib/codeql/rust/elements/internal/generated/SliceTypeRepr.qll 6f4f9d7e29784ce95dc6f9fcdf044909d55c7282c732a81b0108dc4000e96b48 a188436cd6d4d071fd45b943d9778e46ee9a465940bdd1a2903269b4b7a01e21
|
||||
lib/codeql/rust/elements/internal/generated/SourceFile.qll 4bc95c88b49868d1da1a887b35e43ae81e51a69407e79463f5e8824801859380 5641581d70241c0d0d0426976968576ebbef10c183f0371583b243e4e5bbf576
|
||||
lib/codeql/rust/elements/internal/generated/Static.qll 34a4cdb9f4a93414499a30aeeaad1b3388f2341c982af5688815c3b0a0e9c57b 3c8354336eff68d580b804600df9abf49ee5ee10ec076722089087820cefe731
|
||||
lib/codeql/rust/elements/internal/generated/Static.qll 1a6c87d3c5602e3d02268ebe2463a4ac64614ad25e8966a9bdb9c0ef58991365 cc1fe16d70cdce41a12e41a8f80cc38bdd7efa49c1544e35342fcf3cd26b8219
|
||||
lib/codeql/rust/elements/internal/generated/Stmt.qll 8473ff532dd5cc9d7decaddcd174b94d610f6ca0aec8e473cc051dad9f3db917 6ef7d2b5237c2dbdcacbf7d8b39109d4dc100229f2b28b5c9e3e4fbf673ba72b
|
||||
lib/codeql/rust/elements/internal/generated/StmtList.qll 816aebf8f56e179f5f0ba03e80d257ee85459ea757392356a0af6dbd0cd9ef5e 6aa51cdcdc8d93427555fa93f0e84afdfbbd4ffc8b8d378ae4a22b5b6f94f48b
|
||||
lib/codeql/rust/elements/internal/generated/Struct.qll 999da1b46e40d6e03fd2338fea02429462877c329c5d1338618cbd886a81567e daa7ff7bd32c554462e0a1502d8319cb5e734e056d0564e06596e416e2b88e9d
|
||||
@@ -619,7 +619,7 @@ lib/codeql/rust/elements/internal/generated/StructFieldList.qll 5da528a51a6a5db9
|
||||
lib/codeql/rust/elements/internal/generated/StructPat.qll c76fa005c2fd0448a8803233e1e8818c4123301eb66ac5cf69d0b9eaafc61e98 6e0dffccdce24bca20e87d5ba0f0995c9a1ae8983283e71e7dbfcf6fffc67a58
|
||||
lib/codeql/rust/elements/internal/generated/StructPatField.qll 5b5c7302dbc4a902ca8e69ff31875c867e295a16a626ba3cef29cd0aa248f179 4e192a0df79947f5cb0d47fdbbba7986137a6a40a1be92ae119873e2fad67edf
|
||||
lib/codeql/rust/elements/internal/generated/StructPatFieldList.qll 1a95a1bd9f64fb18e9571657cf2d02a8b13c747048a1f0f74baf31b91f0392ad fc274e414ff4ed54386046505920de92755ad0b4d39a7523cdffa4830bd53b37
|
||||
lib/codeql/rust/elements/internal/generated/Synth.qll ebacd7cf6d7fb784cc77b75032608a622627e6f5e635aa70707df167ce3dc510 0e8ed9d5185afde22d263f3745e5029f23a1041690a80d0df916470823abdf43
|
||||
lib/codeql/rust/elements/internal/generated/Synth.qll 4390996606c436cb34201d7dba9821a0d775d1707e54fbbe24cbf788d1d1d948 8e8077a387c69f7f5e3bdb2754654625c233283eb39eab33a72bde536f139a16
|
||||
lib/codeql/rust/elements/internal/generated/SynthConstructors.qll bcc7f617b775ac0c7f04b1cc333ed7cc0bd91f1fabc8baa03c824d1df03f6076 bcc7f617b775ac0c7f04b1cc333ed7cc0bd91f1fabc8baa03c824d1df03f6076
|
||||
lib/codeql/rust/elements/internal/generated/Token.qll 77a91a25ca5669703cf3a4353b591cef4d72caa6b0b9db07bb9e005d69c848d1 2fdffc4882ed3a6ca9ac6d1fb5f1ac5a471ca703e2ffdc642885fa558d6e373b
|
||||
lib/codeql/rust/elements/internal/generated/TokenTree.qll 1a3c4f5f30659738641abdd28cb793dab3cfde484196b59656fc0a2767e53511 de2ebb210c7759ef7a6f7ee9f805e1cac879221287281775fc80ba34a5492edf
|
||||
@@ -632,7 +632,7 @@ lib/codeql/rust/elements/internal/generated/TupleFieldList.qll fb76d1a3953263618
|
||||
lib/codeql/rust/elements/internal/generated/TuplePat.qll 4e13b509e1c9dd1581a9dc50d38e0a6e36abc1254ea9c732b5b3e6503335afeb 298028df9eb84e106e625ed09d6b20038ad47bfc2faf634a0ffea50b17b5805d
|
||||
lib/codeql/rust/elements/internal/generated/TupleStructPat.qll 6539d0edbdc16e7df849514d51980d4cd1a2c9cbb58ca9e5273851f96df4eb36 45a13bae5220d5737cbd04713a17af5b33d8bb4cfdf17ddd64b298ab0c1eea24
|
||||
lib/codeql/rust/elements/internal/generated/TupleTypeRepr.qll 1756cdbad56d634bf4726bc39c768386754e62650492d7d6344012038236a05b 3ac0997a47f95f28cc70c782173ce345fcb5b073be10f3c0b414d1df8443e04c
|
||||
lib/codeql/rust/elements/internal/generated/TypeAlias.qll 76f2ed5427077a5a4723285410740aeba01886ff1499d603cfeb735fc58ec580 b713c0ee40c959dff01b0f936552e6253634bb5ae152315f0949ecc88cb0dcce
|
||||
lib/codeql/rust/elements/internal/generated/TypeAlias.qll 0d0c97d9e9213b8f0390b3456737d4611701a570b9943bb20b348c4efc8e4693 a83c701c0d8914e01517dfa9253a12be962f0a7ed2f75fbaae25a13432db403f
|
||||
lib/codeql/rust/elements/internal/generated/TypeArg.qll 80245e4b52bef30e5033d4c765c72531324385deea1435dc623290271ff05b1d 097926e918dcd897ea1609010c5490dbf45d4d8f4cffb9166bcadf316a2f1558
|
||||
lib/codeql/rust/elements/internal/generated/TypeBound.qll fa5cf5370c3f69e687b5fc888d2ca29d0a45bd0824d1159a202eafae29e70601 e3bc6a1e5c0af374c60e83396c5b0ceda499fabd300c25017ae7d4d5b234b264
|
||||
lib/codeql/rust/elements/internal/generated/TypeBoundList.qll c5d43dc27075a0d5370ba4bc56b4e247357af5d2989625deff284e7846a3a48b c33c87d080e6eb6df01e98b8b0031d780472fcaf3a1ed156a038669c0e05bf0a
|
||||
|
||||
2
rust/ql/lib/codeql/rust/elements/AssocItem.qll
generated
2
rust/ql/lib/codeql/rust/elements/AssocItem.qll
generated
@@ -4,7 +4,7 @@
|
||||
*/
|
||||
|
||||
private import internal.AssocItemImpl
|
||||
import codeql.rust.elements.AstNode
|
||||
import codeql.rust.elements.Item
|
||||
|
||||
/**
|
||||
* An associated item in a `Trait` or `Impl`.
|
||||
|
||||
1
rust/ql/lib/codeql/rust/elements/Const.qll
generated
1
rust/ql/lib/codeql/rust/elements/Const.qll
generated
@@ -8,7 +8,6 @@ import codeql.rust.elements.AssocItem
|
||||
import codeql.rust.elements.Attr
|
||||
import codeql.rust.elements.Expr
|
||||
import codeql.rust.elements.GenericParamList
|
||||
import codeql.rust.elements.Item
|
||||
import codeql.rust.elements.Name
|
||||
import codeql.rust.elements.TypeRepr
|
||||
import codeql.rust.elements.Visibility
|
||||
|
||||
2
rust/ql/lib/codeql/rust/elements/ExternItem.qll
generated
2
rust/ql/lib/codeql/rust/elements/ExternItem.qll
generated
@@ -4,7 +4,7 @@
|
||||
*/
|
||||
|
||||
private import internal.ExternItemImpl
|
||||
import codeql.rust.elements.AstNode
|
||||
import codeql.rust.elements.Item
|
||||
|
||||
/**
|
||||
* An item inside an extern block.
|
||||
|
||||
1
rust/ql/lib/codeql/rust/elements/Function.qll
generated
1
rust/ql/lib/codeql/rust/elements/Function.qll
generated
@@ -10,7 +10,6 @@ import codeql.rust.elements.BlockExpr
|
||||
import codeql.rust.elements.Callable
|
||||
import codeql.rust.elements.ExternItem
|
||||
import codeql.rust.elements.GenericParamList
|
||||
import codeql.rust.elements.Item
|
||||
import codeql.rust.elements.Name
|
||||
import codeql.rust.elements.RetTypeRepr
|
||||
import codeql.rust.elements.Visibility
|
||||
|
||||
1
rust/ql/lib/codeql/rust/elements/MacroCall.qll
generated
1
rust/ql/lib/codeql/rust/elements/MacroCall.qll
generated
@@ -8,7 +8,6 @@ import codeql.rust.elements.AssocItem
|
||||
import codeql.rust.elements.AstNode
|
||||
import codeql.rust.elements.Attr
|
||||
import codeql.rust.elements.ExternItem
|
||||
import codeql.rust.elements.Item
|
||||
import codeql.rust.elements.Path
|
||||
import codeql.rust.elements.TokenTree
|
||||
|
||||
|
||||
1
rust/ql/lib/codeql/rust/elements/Static.qll
generated
1
rust/ql/lib/codeql/rust/elements/Static.qll
generated
@@ -7,7 +7,6 @@ private import internal.StaticImpl
|
||||
import codeql.rust.elements.Attr
|
||||
import codeql.rust.elements.Expr
|
||||
import codeql.rust.elements.ExternItem
|
||||
import codeql.rust.elements.Item
|
||||
import codeql.rust.elements.Name
|
||||
import codeql.rust.elements.TypeRepr
|
||||
import codeql.rust.elements.Visibility
|
||||
|
||||
1
rust/ql/lib/codeql/rust/elements/TypeAlias.qll
generated
1
rust/ql/lib/codeql/rust/elements/TypeAlias.qll
generated
@@ -8,7 +8,6 @@ import codeql.rust.elements.AssocItem
|
||||
import codeql.rust.elements.Attr
|
||||
import codeql.rust.elements.ExternItem
|
||||
import codeql.rust.elements.GenericParamList
|
||||
import codeql.rust.elements.Item
|
||||
import codeql.rust.elements.Name
|
||||
import codeql.rust.elements.TypeBoundList
|
||||
import codeql.rust.elements.TypeRepr
|
||||
|
||||
@@ -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.ItemImpl::Impl as ItemImpl
|
||||
|
||||
/**
|
||||
* INTERNAL: This module contains the fully generated definition of `AssocItem` and should not
|
||||
@@ -24,5 +24,5 @@ module Generated {
|
||||
* INTERNAL: Do not reference the `Generated::AssocItem` class directly.
|
||||
* Use the subclass `AssocItem`, where the following predicates are available.
|
||||
*/
|
||||
class AssocItem extends Synth::TAssocItem, AstNodeImpl::AstNode { }
|
||||
class AssocItem extends Synth::TAssocItem, ItemImpl::Item { }
|
||||
}
|
||||
|
||||
@@ -10,7 +10,6 @@ import codeql.rust.elements.internal.AssocItemImpl::Impl as AssocItemImpl
|
||||
import codeql.rust.elements.Attr
|
||||
import codeql.rust.elements.Expr
|
||||
import codeql.rust.elements.GenericParamList
|
||||
import codeql.rust.elements.internal.ItemImpl::Impl as ItemImpl
|
||||
import codeql.rust.elements.Name
|
||||
import codeql.rust.elements.TypeRepr
|
||||
import codeql.rust.elements.Visibility
|
||||
@@ -31,7 +30,7 @@ module Generated {
|
||||
* INTERNAL: Do not reference the `Generated::Const` class directly.
|
||||
* Use the subclass `Const`, where the following predicates are available.
|
||||
*/
|
||||
class Const extends Synth::TConst, AssocItemImpl::AssocItem, ItemImpl::Item {
|
||||
class Const extends Synth::TConst, AssocItemImpl::AssocItem {
|
||||
override string getAPrimaryQlClass() { result = "Const" }
|
||||
|
||||
/**
|
||||
|
||||
@@ -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.ItemImpl::Impl as ItemImpl
|
||||
|
||||
/**
|
||||
* INTERNAL: This module contains the fully generated definition of `ExternItem` and should not
|
||||
@@ -26,5 +26,5 @@ module Generated {
|
||||
* INTERNAL: Do not reference the `Generated::ExternItem` class directly.
|
||||
* Use the subclass `ExternItem`, where the following predicates are available.
|
||||
*/
|
||||
class ExternItem extends Synth::TExternItem, AstNodeImpl::AstNode { }
|
||||
class ExternItem extends Synth::TExternItem, ItemImpl::Item { }
|
||||
}
|
||||
|
||||
@@ -12,7 +12,6 @@ import codeql.rust.elements.BlockExpr
|
||||
import codeql.rust.elements.internal.CallableImpl::Impl as CallableImpl
|
||||
import codeql.rust.elements.internal.ExternItemImpl::Impl as ExternItemImpl
|
||||
import codeql.rust.elements.GenericParamList
|
||||
import codeql.rust.elements.internal.ItemImpl::Impl as ItemImpl
|
||||
import codeql.rust.elements.Name
|
||||
import codeql.rust.elements.RetTypeRepr
|
||||
import codeql.rust.elements.Visibility
|
||||
@@ -38,7 +37,7 @@ module Generated {
|
||||
* Use the subclass `Function`, where the following predicates are available.
|
||||
*/
|
||||
class Function extends Synth::TFunction, AssocItemImpl::AssocItem, ExternItemImpl::ExternItem,
|
||||
ItemImpl::Item, CallableImpl::Callable
|
||||
CallableImpl::Callable
|
||||
{
|
||||
override string getAPrimaryQlClass() { result = "Function" }
|
||||
|
||||
|
||||
@@ -10,7 +10,6 @@ import codeql.rust.elements.internal.AssocItemImpl::Impl as AssocItemImpl
|
||||
import codeql.rust.elements.AstNode
|
||||
import codeql.rust.elements.Attr
|
||||
import codeql.rust.elements.internal.ExternItemImpl::Impl as ExternItemImpl
|
||||
import codeql.rust.elements.internal.ItemImpl::Impl as ItemImpl
|
||||
import codeql.rust.elements.Path
|
||||
import codeql.rust.elements.TokenTree
|
||||
|
||||
@@ -29,9 +28,7 @@ module Generated {
|
||||
* INTERNAL: Do not reference the `Generated::MacroCall` class directly.
|
||||
* Use the subclass `MacroCall`, where the following predicates are available.
|
||||
*/
|
||||
class MacroCall extends Synth::TMacroCall, AssocItemImpl::AssocItem, ExternItemImpl::ExternItem,
|
||||
ItemImpl::Item
|
||||
{
|
||||
class MacroCall extends Synth::TMacroCall, AssocItemImpl::AssocItem, ExternItemImpl::ExternItem {
|
||||
override string getAPrimaryQlClass() { result = "MacroCall" }
|
||||
|
||||
/**
|
||||
|
||||
@@ -2185,49 +2185,6 @@ private module Impl {
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfConst(Const e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nAttr, int nBody, int nGenericParamList, int nName,
|
||||
int nTypeRepr, int nVisibility, int nWhereClause
|
||||
|
|
||||
n = 0 and
|
||||
nAttributeMacroExpansion = n + 1 and
|
||||
nAttr = nAttributeMacroExpansion + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and
|
||||
nBody = nAttr + 1 and
|
||||
nGenericParamList = nBody + 1 and
|
||||
nName = nGenericParamList + 1 and
|
||||
nTypeRepr = nName + 1 and
|
||||
nVisibility = nTypeRepr + 1 and
|
||||
nWhereClause = nVisibility + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getAttributeMacroExpansion() and
|
||||
partialPredicateCall = "AttributeMacroExpansion()"
|
||||
or
|
||||
result = e.getAttr(index - nAttributeMacroExpansion) and
|
||||
partialPredicateCall = "Attr(" + (index - nAttributeMacroExpansion).toString() + ")"
|
||||
or
|
||||
index = nAttr and result = e.getBody() and partialPredicateCall = "Body()"
|
||||
or
|
||||
index = nBody and
|
||||
result = e.getGenericParamList() and
|
||||
partialPredicateCall = "GenericParamList()"
|
||||
or
|
||||
index = nGenericParamList and result = e.getName() and partialPredicateCall = "Name()"
|
||||
or
|
||||
index = nName and result = e.getTypeRepr() and partialPredicateCall = "TypeRepr()"
|
||||
or
|
||||
index = nTypeRepr and result = e.getVisibility() and partialPredicateCall = "Visibility()"
|
||||
or
|
||||
index = nVisibility and
|
||||
result = e.getWhereClause() and
|
||||
partialPredicateCall = "WhereClause()"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfExternBlock(
|
||||
ExternBlock e, int index, string partialPredicateCall
|
||||
) {
|
||||
@@ -2293,57 +2250,6 @@ private module Impl {
|
||||
none()
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfFunction(Function e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nParamList, int nAttr, int nAbi, int nBody,
|
||||
int nGenericParamList, int nName, int nRetType, int nVisibility, int nWhereClause
|
||||
|
|
||||
n = 0 and
|
||||
nAttributeMacroExpansion = n + 1 and
|
||||
nParamList = nAttributeMacroExpansion + 1 and
|
||||
nAttr = nParamList + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and
|
||||
nAbi = nAttr + 1 and
|
||||
nBody = nAbi + 1 and
|
||||
nGenericParamList = nBody + 1 and
|
||||
nName = nGenericParamList + 1 and
|
||||
nRetType = nName + 1 and
|
||||
nVisibility = nRetType + 1 and
|
||||
nWhereClause = nVisibility + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getAttributeMacroExpansion() and
|
||||
partialPredicateCall = "AttributeMacroExpansion()"
|
||||
or
|
||||
index = nAttributeMacroExpansion and
|
||||
result = e.getParamList() and
|
||||
partialPredicateCall = "ParamList()"
|
||||
or
|
||||
result = e.getAttr(index - nParamList) and
|
||||
partialPredicateCall = "Attr(" + (index - nParamList).toString() + ")"
|
||||
or
|
||||
index = nAttr and result = e.getAbi() and partialPredicateCall = "Abi()"
|
||||
or
|
||||
index = nAbi and result = e.getBody() and partialPredicateCall = "Body()"
|
||||
or
|
||||
index = nBody and
|
||||
result = e.getGenericParamList() and
|
||||
partialPredicateCall = "GenericParamList()"
|
||||
or
|
||||
index = nGenericParamList and result = e.getName() and partialPredicateCall = "Name()"
|
||||
or
|
||||
index = nName and result = e.getRetType() and partialPredicateCall = "RetType()"
|
||||
or
|
||||
index = nRetType and result = e.getVisibility() and partialPredicateCall = "Visibility()"
|
||||
or
|
||||
index = nVisibility and
|
||||
result = e.getWhereClause() and
|
||||
partialPredicateCall = "WhereClause()"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfImpl(Impl e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nAssocItemList, int nAttr, int nGenericParamList,
|
||||
@@ -2389,38 +2295,6 @@ private module Impl {
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfMacroCall(MacroCall e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nAttr, int nPath, int nTokenTree,
|
||||
int nMacroCallExpansion
|
||||
|
|
||||
n = 0 and
|
||||
nAttributeMacroExpansion = n + 1 and
|
||||
nAttr = nAttributeMacroExpansion + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and
|
||||
nPath = nAttr + 1 and
|
||||
nTokenTree = nPath + 1 and
|
||||
nMacroCallExpansion = nTokenTree + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getAttributeMacroExpansion() and
|
||||
partialPredicateCall = "AttributeMacroExpansion()"
|
||||
or
|
||||
result = e.getAttr(index - nAttributeMacroExpansion) and
|
||||
partialPredicateCall = "Attr(" + (index - nAttributeMacroExpansion).toString() + ")"
|
||||
or
|
||||
index = nAttr and result = e.getPath() and partialPredicateCall = "Path()"
|
||||
or
|
||||
index = nPath and result = e.getTokenTree() and partialPredicateCall = "TokenTree()"
|
||||
or
|
||||
index = nTokenTree and
|
||||
result = e.getMacroCallExpansion() and
|
||||
partialPredicateCall = "MacroCallExpansion()"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfMacroDef(MacroDef e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nArgs, int nAttr, int nBody, int nName,
|
||||
@@ -2573,39 +2447,6 @@ private module Impl {
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfStatic(Static e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nAttr, int nBody, int nName, int nTypeRepr,
|
||||
int nVisibility
|
||||
|
|
||||
n = 0 and
|
||||
nAttributeMacroExpansion = n + 1 and
|
||||
nAttr = nAttributeMacroExpansion + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and
|
||||
nBody = nAttr + 1 and
|
||||
nName = nBody + 1 and
|
||||
nTypeRepr = nName + 1 and
|
||||
nVisibility = nTypeRepr + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getAttributeMacroExpansion() and
|
||||
partialPredicateCall = "AttributeMacroExpansion()"
|
||||
or
|
||||
result = e.getAttr(index - nAttributeMacroExpansion) and
|
||||
partialPredicateCall = "Attr(" + (index - nAttributeMacroExpansion).toString() + ")"
|
||||
or
|
||||
index = nAttr and result = e.getBody() and partialPredicateCall = "Body()"
|
||||
or
|
||||
index = nBody and result = e.getName() and partialPredicateCall = "Name()"
|
||||
or
|
||||
index = nName and result = e.getTypeRepr() and partialPredicateCall = "TypeRepr()"
|
||||
or
|
||||
index = nTypeRepr and result = e.getVisibility() and partialPredicateCall = "Visibility()"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfStructExpr(StructExpr e, int index, string partialPredicateCall) {
|
||||
exists(int n, int nPath, int nStructExprFieldList |
|
||||
n = 0 and
|
||||
@@ -2747,53 +2588,6 @@ private module Impl {
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfTypeAlias(TypeAlias e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nAttr, int nGenericParamList, int nName,
|
||||
int nTypeRepr, int nTypeBoundList, int nVisibility, int nWhereClause
|
||||
|
|
||||
n = 0 and
|
||||
nAttributeMacroExpansion = n + 1 and
|
||||
nAttr = nAttributeMacroExpansion + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and
|
||||
nGenericParamList = nAttr + 1 and
|
||||
nName = nGenericParamList + 1 and
|
||||
nTypeRepr = nName + 1 and
|
||||
nTypeBoundList = nTypeRepr + 1 and
|
||||
nVisibility = nTypeBoundList + 1 and
|
||||
nWhereClause = nVisibility + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getAttributeMacroExpansion() and
|
||||
partialPredicateCall = "AttributeMacroExpansion()"
|
||||
or
|
||||
result = e.getAttr(index - nAttributeMacroExpansion) and
|
||||
partialPredicateCall = "Attr(" + (index - nAttributeMacroExpansion).toString() + ")"
|
||||
or
|
||||
index = nAttr and
|
||||
result = e.getGenericParamList() and
|
||||
partialPredicateCall = "GenericParamList()"
|
||||
or
|
||||
index = nGenericParamList and result = e.getName() and partialPredicateCall = "Name()"
|
||||
or
|
||||
index = nName and result = e.getTypeRepr() and partialPredicateCall = "TypeRepr()"
|
||||
or
|
||||
index = nTypeRepr and
|
||||
result = e.getTypeBoundList() and
|
||||
partialPredicateCall = "TypeBoundList()"
|
||||
or
|
||||
index = nTypeBoundList and
|
||||
result = e.getVisibility() and
|
||||
partialPredicateCall = "Visibility()"
|
||||
or
|
||||
index = nVisibility and
|
||||
result = e.getWhereClause() and
|
||||
partialPredicateCall = "WhereClause()"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfUse(Use e, int index, string partialPredicateCall) {
|
||||
exists(int n, int nAttributeMacroExpansion, int nAttr, int nUseTree, int nVisibility |
|
||||
n = 0 and
|
||||
@@ -2818,6 +2612,49 @@ private module Impl {
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfConst(Const e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nAttr, int nBody, int nGenericParamList, int nName,
|
||||
int nTypeRepr, int nVisibility, int nWhereClause
|
||||
|
|
||||
n = 0 and
|
||||
nAttributeMacroExpansion = n + 1 and
|
||||
nAttr = nAttributeMacroExpansion + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and
|
||||
nBody = nAttr + 1 and
|
||||
nGenericParamList = nBody + 1 and
|
||||
nName = nGenericParamList + 1 and
|
||||
nTypeRepr = nName + 1 and
|
||||
nVisibility = nTypeRepr + 1 and
|
||||
nWhereClause = nVisibility + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getAttributeMacroExpansion() and
|
||||
partialPredicateCall = "AttributeMacroExpansion()"
|
||||
or
|
||||
result = e.getAttr(index - nAttributeMacroExpansion) and
|
||||
partialPredicateCall = "Attr(" + (index - nAttributeMacroExpansion).toString() + ")"
|
||||
or
|
||||
index = nAttr and result = e.getBody() and partialPredicateCall = "Body()"
|
||||
or
|
||||
index = nBody and
|
||||
result = e.getGenericParamList() and
|
||||
partialPredicateCall = "GenericParamList()"
|
||||
or
|
||||
index = nGenericParamList and result = e.getName() and partialPredicateCall = "Name()"
|
||||
or
|
||||
index = nName and result = e.getTypeRepr() and partialPredicateCall = "TypeRepr()"
|
||||
or
|
||||
index = nTypeRepr and result = e.getVisibility() and partialPredicateCall = "Visibility()"
|
||||
or
|
||||
index = nVisibility and
|
||||
result = e.getWhereClause() and
|
||||
partialPredicateCall = "WhereClause()"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfEnum(Enum e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nDeriveMacroExpansion, int nAttr,
|
||||
@@ -2892,6 +2729,57 @@ private module Impl {
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfFunction(Function e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nParamList, int nAttr, int nAbi, int nBody,
|
||||
int nGenericParamList, int nName, int nRetType, int nVisibility, int nWhereClause
|
||||
|
|
||||
n = 0 and
|
||||
nAttributeMacroExpansion = n + 1 and
|
||||
nParamList = nAttributeMacroExpansion + 1 and
|
||||
nAttr = nParamList + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and
|
||||
nAbi = nAttr + 1 and
|
||||
nBody = nAbi + 1 and
|
||||
nGenericParamList = nBody + 1 and
|
||||
nName = nGenericParamList + 1 and
|
||||
nRetType = nName + 1 and
|
||||
nVisibility = nRetType + 1 and
|
||||
nWhereClause = nVisibility + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getAttributeMacroExpansion() and
|
||||
partialPredicateCall = "AttributeMacroExpansion()"
|
||||
or
|
||||
index = nAttributeMacroExpansion and
|
||||
result = e.getParamList() and
|
||||
partialPredicateCall = "ParamList()"
|
||||
or
|
||||
result = e.getAttr(index - nParamList) and
|
||||
partialPredicateCall = "Attr(" + (index - nParamList).toString() + ")"
|
||||
or
|
||||
index = nAttr and result = e.getAbi() and partialPredicateCall = "Abi()"
|
||||
or
|
||||
index = nAbi and result = e.getBody() and partialPredicateCall = "Body()"
|
||||
or
|
||||
index = nBody and
|
||||
result = e.getGenericParamList() and
|
||||
partialPredicateCall = "GenericParamList()"
|
||||
or
|
||||
index = nGenericParamList and result = e.getName() and partialPredicateCall = "Name()"
|
||||
or
|
||||
index = nName and result = e.getRetType() and partialPredicateCall = "RetType()"
|
||||
or
|
||||
index = nRetType and result = e.getVisibility() and partialPredicateCall = "Visibility()"
|
||||
or
|
||||
index = nVisibility and
|
||||
result = e.getWhereClause() and
|
||||
partialPredicateCall = "WhereClause()"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfLoopExpr(LoopExpr e, int index, string partialPredicateCall) {
|
||||
exists(int n, int nLabel, int nLoopBody, int nAttr |
|
||||
n = 0 and
|
||||
@@ -2911,6 +2799,71 @@ private module Impl {
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfMacroCall(MacroCall e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nAttr, int nPath, int nTokenTree,
|
||||
int nMacroCallExpansion
|
||||
|
|
||||
n = 0 and
|
||||
nAttributeMacroExpansion = n + 1 and
|
||||
nAttr = nAttributeMacroExpansion + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and
|
||||
nPath = nAttr + 1 and
|
||||
nTokenTree = nPath + 1 and
|
||||
nMacroCallExpansion = nTokenTree + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getAttributeMacroExpansion() and
|
||||
partialPredicateCall = "AttributeMacroExpansion()"
|
||||
or
|
||||
result = e.getAttr(index - nAttributeMacroExpansion) and
|
||||
partialPredicateCall = "Attr(" + (index - nAttributeMacroExpansion).toString() + ")"
|
||||
or
|
||||
index = nAttr and result = e.getPath() and partialPredicateCall = "Path()"
|
||||
or
|
||||
index = nPath and result = e.getTokenTree() and partialPredicateCall = "TokenTree()"
|
||||
or
|
||||
index = nTokenTree and
|
||||
result = e.getMacroCallExpansion() and
|
||||
partialPredicateCall = "MacroCallExpansion()"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfStatic(Static e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nAttr, int nBody, int nName, int nTypeRepr,
|
||||
int nVisibility
|
||||
|
|
||||
n = 0 and
|
||||
nAttributeMacroExpansion = n + 1 and
|
||||
nAttr = nAttributeMacroExpansion + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and
|
||||
nBody = nAttr + 1 and
|
||||
nName = nBody + 1 and
|
||||
nTypeRepr = nName + 1 and
|
||||
nVisibility = nTypeRepr + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getAttributeMacroExpansion() and
|
||||
partialPredicateCall = "AttributeMacroExpansion()"
|
||||
or
|
||||
result = e.getAttr(index - nAttributeMacroExpansion) and
|
||||
partialPredicateCall = "Attr(" + (index - nAttributeMacroExpansion).toString() + ")"
|
||||
or
|
||||
index = nAttr and result = e.getBody() and partialPredicateCall = "Body()"
|
||||
or
|
||||
index = nBody and result = e.getName() and partialPredicateCall = "Name()"
|
||||
or
|
||||
index = nName and result = e.getTypeRepr() and partialPredicateCall = "TypeRepr()"
|
||||
or
|
||||
index = nTypeRepr and result = e.getVisibility() and partialPredicateCall = "Visibility()"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfStruct(Struct e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nDeriveMacroExpansion, int nAttr, int nFieldList,
|
||||
@@ -2958,6 +2911,53 @@ private module Impl {
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfTypeAlias(TypeAlias e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nAttr, int nGenericParamList, int nName,
|
||||
int nTypeRepr, int nTypeBoundList, int nVisibility, int nWhereClause
|
||||
|
|
||||
n = 0 and
|
||||
nAttributeMacroExpansion = n + 1 and
|
||||
nAttr = nAttributeMacroExpansion + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and
|
||||
nGenericParamList = nAttr + 1 and
|
||||
nName = nGenericParamList + 1 and
|
||||
nTypeRepr = nName + 1 and
|
||||
nTypeBoundList = nTypeRepr + 1 and
|
||||
nVisibility = nTypeBoundList + 1 and
|
||||
nWhereClause = nVisibility + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getAttributeMacroExpansion() and
|
||||
partialPredicateCall = "AttributeMacroExpansion()"
|
||||
or
|
||||
result = e.getAttr(index - nAttributeMacroExpansion) and
|
||||
partialPredicateCall = "Attr(" + (index - nAttributeMacroExpansion).toString() + ")"
|
||||
or
|
||||
index = nAttr and
|
||||
result = e.getGenericParamList() and
|
||||
partialPredicateCall = "GenericParamList()"
|
||||
or
|
||||
index = nGenericParamList and result = e.getName() and partialPredicateCall = "Name()"
|
||||
or
|
||||
index = nName and result = e.getTypeRepr() and partialPredicateCall = "TypeRepr()"
|
||||
or
|
||||
index = nTypeRepr and
|
||||
result = e.getTypeBoundList() and
|
||||
partialPredicateCall = "TypeBoundList()"
|
||||
or
|
||||
index = nTypeBoundList and
|
||||
result = e.getVisibility() and
|
||||
partialPredicateCall = "Visibility()"
|
||||
or
|
||||
index = nVisibility and
|
||||
result = e.getWhereClause() and
|
||||
partialPredicateCall = "WhereClause()"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfUnion(Union e, int index, string partialPredicateCall) {
|
||||
exists(
|
||||
int n, int nAttributeMacroExpansion, int nDeriveMacroExpansion, int nAttr,
|
||||
@@ -3313,20 +3313,14 @@ private module Impl {
|
||||
or
|
||||
result = getImmediateChildOfCallExpr(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfConst(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfExternBlock(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfExternCrate(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfFormatTemplateVariableAccess(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfFunction(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfImpl(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfMacroCall(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfMacroDef(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfMacroRules(e, index, partialAccessor)
|
||||
@@ -3339,8 +3333,6 @@ private module Impl {
|
||||
or
|
||||
result = getImmediateChildOfPathPat(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfStatic(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfStructExpr(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfStructPat(e, index, partialAccessor)
|
||||
@@ -3351,18 +3343,26 @@ private module Impl {
|
||||
or
|
||||
result = getImmediateChildOfTupleStructPat(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfTypeAlias(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfUse(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfConst(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfEnum(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfForExpr(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfFunction(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfLoopExpr(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfMacroCall(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfStatic(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfStruct(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfTypeAlias(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfUnion(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfWhileExpr(e, index, partialAccessor)
|
||||
|
||||
@@ -265,18 +265,6 @@ module Raw {
|
||||
NameRef getIdentifier() { asm_reg_spec_identifiers(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* An associated item in a `Trait` or `Impl`.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
* trait T {fn foo(&self);}
|
||||
* // ^^^^^^^^^^^^^
|
||||
* ```
|
||||
*/
|
||||
class AssocItem extends @assoc_item, AstNode { }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A list of `AssocItem` elements, as appearing in a `Trait` or `Impl`.
|
||||
@@ -361,20 +349,6 @@ module Raw {
|
||||
*/
|
||||
class Expr extends @expr, AstNode { }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* An item inside an extern block.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
* extern "C" {
|
||||
* fn foo();
|
||||
* static BAR: i32;
|
||||
* }
|
||||
* ```
|
||||
*/
|
||||
class ExternItem extends @extern_item, AstNode { }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A list of items inside an extern block.
|
||||
@@ -3618,6 +3592,18 @@ module Raw {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* An associated item in a `Trait` or `Impl`.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
* trait T {fn foo(&self);}
|
||||
* // ^^^^^^^^^^^^^
|
||||
* ```
|
||||
*/
|
||||
class AssocItem extends @assoc_item, Item { }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A block expression. For example:
|
||||
@@ -3696,72 +3682,6 @@ module Raw {
|
||||
Expr getFunction() { call_expr_functions(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A constant item declaration.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
* const X: i32 = 42;
|
||||
* ```
|
||||
*/
|
||||
class Const extends @const, AssocItem, Item {
|
||||
override string toString() { result = "Const" }
|
||||
|
||||
/**
|
||||
* Gets the `index`th attr of this const (0-based).
|
||||
*/
|
||||
Attr getAttr(int index) { const_attrs(this, index, result) }
|
||||
|
||||
/**
|
||||
* Gets the body of this const, if it exists.
|
||||
*/
|
||||
Expr getBody() { const_bodies(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this const, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() { const_generic_param_lists(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this const is const.
|
||||
*/
|
||||
predicate isConst() { const_is_const(this) }
|
||||
|
||||
/**
|
||||
* Holds if this const is default.
|
||||
*/
|
||||
predicate isDefault() { const_is_default(this) }
|
||||
|
||||
/**
|
||||
* Gets the name of this const, if it exists.
|
||||
*/
|
||||
Name getName() { const_names(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the type representation of this const, if it exists.
|
||||
*/
|
||||
TypeRepr getTypeRepr() { const_type_reprs(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the visibility of this const, if it exists.
|
||||
*/
|
||||
Visibility getVisibility() { const_visibilities(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the where clause of this const, if it exists.
|
||||
*/
|
||||
WhereClause getWhereClause() { const_where_clauses(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this constant has an implementation.
|
||||
*
|
||||
* This is the same as `hasBody` for source code, but for library code (for which we always skip
|
||||
* the body), this will hold when the body was present in the original code.
|
||||
*/
|
||||
predicate hasImplementation() { const_has_implementation(this) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* An extern block containing foreign function declarations.
|
||||
@@ -3832,88 +3752,17 @@ module Raw {
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A function declaration. For example
|
||||
* An item inside an extern block.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
* fn foo(x: u32) -> u64 {(x + 1).into()}
|
||||
* ```
|
||||
* A function declaration within a trait might not have a body:
|
||||
* ```rust
|
||||
* trait Trait {
|
||||
* fn bar();
|
||||
* extern "C" {
|
||||
* fn foo();
|
||||
* static BAR: i32;
|
||||
* }
|
||||
* ```
|
||||
*/
|
||||
class Function extends @function, AssocItem, ExternItem, Item, Callable {
|
||||
override string toString() { result = "Function" }
|
||||
|
||||
/**
|
||||
* Gets the abi of this function, if it exists.
|
||||
*/
|
||||
Abi getAbi() { function_abis(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the body of this function, if it exists.
|
||||
*/
|
||||
BlockExpr getBody() { function_bodies(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this function, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() { function_generic_param_lists(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this function is async.
|
||||
*/
|
||||
predicate isAsync() { function_is_async(this) }
|
||||
|
||||
/**
|
||||
* Holds if this function is const.
|
||||
*/
|
||||
predicate isConst() { function_is_const(this) }
|
||||
|
||||
/**
|
||||
* Holds if this function is default.
|
||||
*/
|
||||
predicate isDefault() { function_is_default(this) }
|
||||
|
||||
/**
|
||||
* Holds if this function is gen.
|
||||
*/
|
||||
predicate isGen() { function_is_gen(this) }
|
||||
|
||||
/**
|
||||
* Holds if this function is unsafe.
|
||||
*/
|
||||
predicate isUnsafe() { function_is_unsafe(this) }
|
||||
|
||||
/**
|
||||
* Gets the name of this function, if it exists.
|
||||
*/
|
||||
Name getName() { function_names(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the ret type of this function, if it exists.
|
||||
*/
|
||||
RetTypeRepr getRetType() { function_ret_types(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the visibility of this function, if it exists.
|
||||
*/
|
||||
Visibility getVisibility() { function_visibilities(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the where clause of this function, if it exists.
|
||||
*/
|
||||
WhereClause getWhereClause() { function_where_clauses(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this function has an implementation.
|
||||
*
|
||||
* This is the same as `hasBody` for source code, but for library code (for which we always skip
|
||||
* the body), this will hold when the body was present in the original code.
|
||||
*/
|
||||
predicate hasImplementation() { function_has_implementation(this) }
|
||||
}
|
||||
class ExternItem extends @extern_item, Item { }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
@@ -3991,39 +3840,6 @@ module Raw {
|
||||
BlockExpr getLoopBody() { looping_expr_loop_bodies(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A macro invocation.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
* println!("Hello, world!");
|
||||
* ```
|
||||
*/
|
||||
class MacroCall extends @macro_call, AssocItem, ExternItem, Item {
|
||||
override string toString() { result = "MacroCall" }
|
||||
|
||||
/**
|
||||
* Gets the `index`th attr of this macro call (0-based).
|
||||
*/
|
||||
Attr getAttr(int index) { macro_call_attrs(this, index, result) }
|
||||
|
||||
/**
|
||||
* Gets the path of this macro call, if it exists.
|
||||
*/
|
||||
Path getPath() { macro_call_paths(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the token tree of this macro call, if it exists.
|
||||
*/
|
||||
TokenTree getTokenTree() { macro_call_token_trees(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the macro call expansion of this macro call, if it exists.
|
||||
*/
|
||||
AstNode getMacroCallExpansion() { macro_call_macro_call_expansions(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A Rust 2.0 style declarative macro definition.
|
||||
@@ -4195,59 +4011,6 @@ module Raw {
|
||||
override string toString() { result = "PathPat" }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A static item declaration.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
* static X: i32 = 42;
|
||||
* ```
|
||||
*/
|
||||
class Static extends @static, ExternItem, Item {
|
||||
override string toString() { result = "Static" }
|
||||
|
||||
/**
|
||||
* Gets the `index`th attr of this static (0-based).
|
||||
*/
|
||||
Attr getAttr(int index) { static_attrs(this, index, result) }
|
||||
|
||||
/**
|
||||
* Gets the body of this static, if it exists.
|
||||
*/
|
||||
Expr getBody() { static_bodies(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this static is mut.
|
||||
*/
|
||||
predicate isMut() { static_is_mut(this) }
|
||||
|
||||
/**
|
||||
* Holds if this static is static.
|
||||
*/
|
||||
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.
|
||||
*/
|
||||
Name getName() { static_names(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the type representation of this static, if it exists.
|
||||
*/
|
||||
TypeRepr getTypeRepr() { static_type_reprs(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the visibility of this static, if it exists.
|
||||
*/
|
||||
Visibility getVisibility() { static_visibilities(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A struct expression. For example:
|
||||
@@ -4413,62 +4176,6 @@ module Raw {
|
||||
Pat getField(int index) { tuple_struct_pat_fields(this, index, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A type alias. For example:
|
||||
* ```rust
|
||||
* type Point = (u8, u8);
|
||||
*
|
||||
* trait Trait {
|
||||
* type Output;
|
||||
* // ^^^^^^^^^^^
|
||||
* }
|
||||
* ```
|
||||
*/
|
||||
class TypeAlias extends @type_alias, AssocItem, ExternItem, Item {
|
||||
override string toString() { result = "TypeAlias" }
|
||||
|
||||
/**
|
||||
* Gets the `index`th attr of this type alias (0-based).
|
||||
*/
|
||||
Attr getAttr(int index) { type_alias_attrs(this, index, result) }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this type alias, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() { type_alias_generic_param_lists(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this type alias is default.
|
||||
*/
|
||||
predicate isDefault() { type_alias_is_default(this) }
|
||||
|
||||
/**
|
||||
* Gets the name of this type alias, if it exists.
|
||||
*/
|
||||
Name getName() { type_alias_names(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the type representation of this type alias, if it exists.
|
||||
*/
|
||||
TypeRepr getTypeRepr() { type_alias_type_reprs(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the type bound list of this type alias, if it exists.
|
||||
*/
|
||||
TypeBoundList getTypeBoundList() { type_alias_type_bound_lists(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the visibility of this type alias, if it exists.
|
||||
*/
|
||||
Visibility getVisibility() { type_alias_visibilities(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the where clause of this type alias, if it exists.
|
||||
*/
|
||||
WhereClause getWhereClause() { type_alias_where_clauses(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A `use` statement. For example:
|
||||
@@ -4495,6 +4202,72 @@ module Raw {
|
||||
Visibility getVisibility() { use_visibilities(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A constant item declaration.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
* const X: i32 = 42;
|
||||
* ```
|
||||
*/
|
||||
class Const extends @const, AssocItem {
|
||||
override string toString() { result = "Const" }
|
||||
|
||||
/**
|
||||
* Gets the `index`th attr of this const (0-based).
|
||||
*/
|
||||
Attr getAttr(int index) { const_attrs(this, index, result) }
|
||||
|
||||
/**
|
||||
* Gets the body of this const, if it exists.
|
||||
*/
|
||||
Expr getBody() { const_bodies(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this const, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() { const_generic_param_lists(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this const is const.
|
||||
*/
|
||||
predicate isConst() { const_is_const(this) }
|
||||
|
||||
/**
|
||||
* Holds if this const is default.
|
||||
*/
|
||||
predicate isDefault() { const_is_default(this) }
|
||||
|
||||
/**
|
||||
* Gets the name of this const, if it exists.
|
||||
*/
|
||||
Name getName() { const_names(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the type representation of this const, if it exists.
|
||||
*/
|
||||
TypeRepr getTypeRepr() { const_type_reprs(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the visibility of this const, if it exists.
|
||||
*/
|
||||
Visibility getVisibility() { const_visibilities(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the where clause of this const, if it exists.
|
||||
*/
|
||||
WhereClause getWhereClause() { const_where_clauses(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this constant has an implementation.
|
||||
*
|
||||
* This is the same as `hasBody` for source code, but for library code (for which we always skip
|
||||
* the body), this will hold when the body was present in the original code.
|
||||
*/
|
||||
predicate hasImplementation() { const_has_implementation(this) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* An enum declaration.
|
||||
@@ -4568,6 +4341,91 @@ module Raw {
|
||||
Pat getPat() { for_expr_pats(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A function declaration. For example
|
||||
* ```rust
|
||||
* fn foo(x: u32) -> u64 {(x + 1).into()}
|
||||
* ```
|
||||
* A function declaration within a trait might not have a body:
|
||||
* ```rust
|
||||
* trait Trait {
|
||||
* fn bar();
|
||||
* }
|
||||
* ```
|
||||
*/
|
||||
class Function extends @function, AssocItem, ExternItem, Callable {
|
||||
override string toString() { result = "Function" }
|
||||
|
||||
/**
|
||||
* Gets the abi of this function, if it exists.
|
||||
*/
|
||||
Abi getAbi() { function_abis(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the body of this function, if it exists.
|
||||
*/
|
||||
BlockExpr getBody() { function_bodies(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this function, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() { function_generic_param_lists(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this function is async.
|
||||
*/
|
||||
predicate isAsync() { function_is_async(this) }
|
||||
|
||||
/**
|
||||
* Holds if this function is const.
|
||||
*/
|
||||
predicate isConst() { function_is_const(this) }
|
||||
|
||||
/**
|
||||
* Holds if this function is default.
|
||||
*/
|
||||
predicate isDefault() { function_is_default(this) }
|
||||
|
||||
/**
|
||||
* Holds if this function is gen.
|
||||
*/
|
||||
predicate isGen() { function_is_gen(this) }
|
||||
|
||||
/**
|
||||
* Holds if this function is unsafe.
|
||||
*/
|
||||
predicate isUnsafe() { function_is_unsafe(this) }
|
||||
|
||||
/**
|
||||
* Gets the name of this function, if it exists.
|
||||
*/
|
||||
Name getName() { function_names(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the ret type of this function, if it exists.
|
||||
*/
|
||||
RetTypeRepr getRetType() { function_ret_types(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the visibility of this function, if it exists.
|
||||
*/
|
||||
Visibility getVisibility() { function_visibilities(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the where clause of this function, if it exists.
|
||||
*/
|
||||
WhereClause getWhereClause() { function_where_clauses(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this function has an implementation.
|
||||
*
|
||||
* This is the same as `hasBody` for source code, but for library code (for which we always skip
|
||||
* the body), this will hold when the body was present in the original code.
|
||||
*/
|
||||
predicate hasImplementation() { function_has_implementation(this) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A loop expression. For example:
|
||||
@@ -4602,6 +4460,92 @@ module Raw {
|
||||
Attr getAttr(int index) { loop_expr_attrs(this, index, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A macro invocation.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
* println!("Hello, world!");
|
||||
* ```
|
||||
*/
|
||||
class MacroCall extends @macro_call, AssocItem, ExternItem {
|
||||
override string toString() { result = "MacroCall" }
|
||||
|
||||
/**
|
||||
* Gets the `index`th attr of this macro call (0-based).
|
||||
*/
|
||||
Attr getAttr(int index) { macro_call_attrs(this, index, result) }
|
||||
|
||||
/**
|
||||
* Gets the path of this macro call, if it exists.
|
||||
*/
|
||||
Path getPath() { macro_call_paths(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the token tree of this macro call, if it exists.
|
||||
*/
|
||||
TokenTree getTokenTree() { macro_call_token_trees(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the macro call expansion of this macro call, if it exists.
|
||||
*/
|
||||
AstNode getMacroCallExpansion() { macro_call_macro_call_expansions(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A static item declaration.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
* static X: i32 = 42;
|
||||
* ```
|
||||
*/
|
||||
class Static extends @static, ExternItem {
|
||||
override string toString() { result = "Static" }
|
||||
|
||||
/**
|
||||
* Gets the `index`th attr of this static (0-based).
|
||||
*/
|
||||
Attr getAttr(int index) { static_attrs(this, index, result) }
|
||||
|
||||
/**
|
||||
* Gets the body of this static, if it exists.
|
||||
*/
|
||||
Expr getBody() { static_bodies(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this static is mut.
|
||||
*/
|
||||
predicate isMut() { static_is_mut(this) }
|
||||
|
||||
/**
|
||||
* Holds if this static is static.
|
||||
*/
|
||||
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.
|
||||
*/
|
||||
Name getName() { static_names(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the type representation of this static, if it exists.
|
||||
*/
|
||||
TypeRepr getTypeRepr() { static_type_reprs(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the visibility of this static, if it exists.
|
||||
*/
|
||||
Visibility getVisibility() { static_visibilities(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A Struct. For example:
|
||||
@@ -4646,6 +4590,62 @@ module Raw {
|
||||
WhereClause getWhereClause() { struct_where_clauses(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A type alias. For example:
|
||||
* ```rust
|
||||
* type Point = (u8, u8);
|
||||
*
|
||||
* trait Trait {
|
||||
* type Output;
|
||||
* // ^^^^^^^^^^^
|
||||
* }
|
||||
* ```
|
||||
*/
|
||||
class TypeAlias extends @type_alias, AssocItem, ExternItem {
|
||||
override string toString() { result = "TypeAlias" }
|
||||
|
||||
/**
|
||||
* Gets the `index`th attr of this type alias (0-based).
|
||||
*/
|
||||
Attr getAttr(int index) { type_alias_attrs(this, index, result) }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this type alias, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() { type_alias_generic_param_lists(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this type alias is default.
|
||||
*/
|
||||
predicate isDefault() { type_alias_is_default(this) }
|
||||
|
||||
/**
|
||||
* Gets the name of this type alias, if it exists.
|
||||
*/
|
||||
Name getName() { type_alias_names(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the type representation of this type alias, if it exists.
|
||||
*/
|
||||
TypeRepr getTypeRepr() { type_alias_type_reprs(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the type bound list of this type alias, if it exists.
|
||||
*/
|
||||
TypeBoundList getTypeBoundList() { type_alias_type_bound_lists(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the visibility of this type alias, if it exists.
|
||||
*/
|
||||
Visibility getVisibility() { type_alias_visibilities(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the where clause of this type alias, if it exists.
|
||||
*/
|
||||
WhereClause getWhereClause() { type_alias_where_clauses(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A union declaration.
|
||||
|
||||
@@ -9,7 +9,6 @@ private import codeql.rust.elements.internal.generated.Raw
|
||||
import codeql.rust.elements.Attr
|
||||
import codeql.rust.elements.Expr
|
||||
import codeql.rust.elements.internal.ExternItemImpl::Impl as ExternItemImpl
|
||||
import codeql.rust.elements.internal.ItemImpl::Impl as ItemImpl
|
||||
import codeql.rust.elements.Name
|
||||
import codeql.rust.elements.TypeRepr
|
||||
import codeql.rust.elements.Visibility
|
||||
@@ -29,7 +28,7 @@ module Generated {
|
||||
* INTERNAL: Do not reference the `Generated::Static` class directly.
|
||||
* Use the subclass `Static`, where the following predicates are available.
|
||||
*/
|
||||
class Static extends Synth::TStatic, ExternItemImpl::ExternItem, ItemImpl::Item {
|
||||
class Static extends Synth::TStatic, ExternItemImpl::ExternItem {
|
||||
override string getAPrimaryQlClass() { result = "Static" }
|
||||
|
||||
/**
|
||||
|
||||
@@ -718,17 +718,16 @@ module Synth {
|
||||
*/
|
||||
class TAstNode =
|
||||
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 TMatchArm or TMatchArmList or
|
||||
TMatchGuard or TMeta or TName or TParamBase or TParamList or TParenthesizedArgList or
|
||||
TPat or TPath or TPathSegment or TRename or TResolvable or TRetTypeRepr or
|
||||
TReturnTypeSyntax or TSourceFile or TStmt or TStmtList or TStructExprField or
|
||||
TStructExprFieldList or TStructField or TStructPatField or TStructPatFieldList 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;
|
||||
TAsmOption or TAsmPiece or TAsmRegSpec or TAssocItemList or TAttr or TCallable or
|
||||
TClosureBinder or TExpr or TExternItemList or TFieldList or TFormatArgsArg or TGenericArg or
|
||||
TGenericArgList or TGenericParam or TGenericParamList or TItemList or TLabel or TLetElse or
|
||||
TMacroItems or TMatchArm or TMatchArmList or TMatchGuard or TMeta or TName or TParamBase or
|
||||
TParamList or TParenthesizedArgList or TPat or TPath or TPathSegment or TRename or
|
||||
TResolvable or TRetTypeRepr or TReturnTypeSyntax or TSourceFile or TStmt or TStmtList or
|
||||
TStructExprField or TStructExprFieldList or TStructField or TStructPatField or
|
||||
TStructPatFieldList 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.
|
||||
@@ -775,9 +774,8 @@ module Synth {
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
class TItem =
|
||||
TAdt or TConst or TExternBlock or TExternCrate or TFunction or TImpl or TMacroCall or
|
||||
TMacroDef or TMacroRules or TModule or TStatic or TTrait or TTraitAlias or TTypeAlias or
|
||||
TUse;
|
||||
TAdt or TAssocItem or TExternBlock or TExternCrate or TExternItem or TImpl or TMacroDef or
|
||||
TMacroRules or TModule or TTrait or TTraitAlias or TUse;
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
@@ -1949,8 +1947,6 @@ module Synth {
|
||||
or
|
||||
result = convertAsmRegSpecFromRaw(e)
|
||||
or
|
||||
result = convertAssocItemFromRaw(e)
|
||||
or
|
||||
result = convertAssocItemListFromRaw(e)
|
||||
or
|
||||
result = convertAttrFromRaw(e)
|
||||
@@ -1961,8 +1957,6 @@ module Synth {
|
||||
or
|
||||
result = convertExprFromRaw(e)
|
||||
or
|
||||
result = convertExternItemFromRaw(e)
|
||||
or
|
||||
result = convertExternItemListFromRaw(e)
|
||||
or
|
||||
result = convertFieldListFromRaw(e)
|
||||
@@ -2225,32 +2219,26 @@ module Synth {
|
||||
TItem convertItemFromRaw(Raw::Element e) {
|
||||
result = convertAdtFromRaw(e)
|
||||
or
|
||||
result = convertConstFromRaw(e)
|
||||
result = convertAssocItemFromRaw(e)
|
||||
or
|
||||
result = convertExternBlockFromRaw(e)
|
||||
or
|
||||
result = convertExternCrateFromRaw(e)
|
||||
or
|
||||
result = convertFunctionFromRaw(e)
|
||||
result = convertExternItemFromRaw(e)
|
||||
or
|
||||
result = convertImplFromRaw(e)
|
||||
or
|
||||
result = convertMacroCallFromRaw(e)
|
||||
or
|
||||
result = convertMacroDefFromRaw(e)
|
||||
or
|
||||
result = convertMacroRulesFromRaw(e)
|
||||
or
|
||||
result = convertModuleFromRaw(e)
|
||||
or
|
||||
result = convertStaticFromRaw(e)
|
||||
or
|
||||
result = convertTraitFromRaw(e)
|
||||
or
|
||||
result = convertTraitAliasFromRaw(e)
|
||||
or
|
||||
result = convertTypeAliasFromRaw(e)
|
||||
or
|
||||
result = convertUseFromRaw(e)
|
||||
}
|
||||
|
||||
@@ -3543,8 +3531,6 @@ module Synth {
|
||||
or
|
||||
result = convertAsmRegSpecToRaw(e)
|
||||
or
|
||||
result = convertAssocItemToRaw(e)
|
||||
or
|
||||
result = convertAssocItemListToRaw(e)
|
||||
or
|
||||
result = convertAttrToRaw(e)
|
||||
@@ -3555,8 +3541,6 @@ module Synth {
|
||||
or
|
||||
result = convertExprToRaw(e)
|
||||
or
|
||||
result = convertExternItemToRaw(e)
|
||||
or
|
||||
result = convertExternItemListToRaw(e)
|
||||
or
|
||||
result = convertFieldListToRaw(e)
|
||||
@@ -3819,32 +3803,26 @@ module Synth {
|
||||
Raw::Element convertItemToRaw(TItem e) {
|
||||
result = convertAdtToRaw(e)
|
||||
or
|
||||
result = convertConstToRaw(e)
|
||||
result = convertAssocItemToRaw(e)
|
||||
or
|
||||
result = convertExternBlockToRaw(e)
|
||||
or
|
||||
result = convertExternCrateToRaw(e)
|
||||
or
|
||||
result = convertFunctionToRaw(e)
|
||||
result = convertExternItemToRaw(e)
|
||||
or
|
||||
result = convertImplToRaw(e)
|
||||
or
|
||||
result = convertMacroCallToRaw(e)
|
||||
or
|
||||
result = convertMacroDefToRaw(e)
|
||||
or
|
||||
result = convertMacroRulesToRaw(e)
|
||||
or
|
||||
result = convertModuleToRaw(e)
|
||||
or
|
||||
result = convertStaticToRaw(e)
|
||||
or
|
||||
result = convertTraitToRaw(e)
|
||||
or
|
||||
result = convertTraitAliasToRaw(e)
|
||||
or
|
||||
result = convertTypeAliasToRaw(e)
|
||||
or
|
||||
result = convertUseToRaw(e)
|
||||
}
|
||||
|
||||
|
||||
@@ -10,7 +10,6 @@ import codeql.rust.elements.internal.AssocItemImpl::Impl as AssocItemImpl
|
||||
import codeql.rust.elements.Attr
|
||||
import codeql.rust.elements.internal.ExternItemImpl::Impl as ExternItemImpl
|
||||
import codeql.rust.elements.GenericParamList
|
||||
import codeql.rust.elements.internal.ItemImpl::Impl as ItemImpl
|
||||
import codeql.rust.elements.Name
|
||||
import codeql.rust.elements.TypeBoundList
|
||||
import codeql.rust.elements.TypeRepr
|
||||
@@ -35,9 +34,7 @@ module Generated {
|
||||
* INTERNAL: Do not reference the `Generated::TypeAlias` class directly.
|
||||
* Use the subclass `TypeAlias`, where the following predicates are available.
|
||||
*/
|
||||
class TypeAlias extends Synth::TTypeAlias, AssocItemImpl::AssocItem, ExternItemImpl::ExternItem,
|
||||
ItemImpl::Item
|
||||
{
|
||||
class TypeAlias extends Synth::TTypeAlias, AssocItemImpl::AssocItem, ExternItemImpl::ExternItem {
|
||||
override string getAPrimaryQlClass() { result = "TypeAlias" }
|
||||
|
||||
/**
|
||||
|
||||
@@ -164,13 +164,11 @@ named_crates(
|
||||
| @asm_option
|
||||
| @asm_piece
|
||||
| @asm_reg_spec
|
||||
| @assoc_item
|
||||
| @assoc_item_list
|
||||
| @attr
|
||||
| @callable
|
||||
| @closure_binder
|
||||
| @expr
|
||||
| @extern_item
|
||||
| @extern_item_list
|
||||
| @field_list
|
||||
| @format_args_arg
|
||||
@@ -349,13 +347,6 @@ asm_reg_spec_identifiers(
|
||||
int identifier: @name_ref ref
|
||||
);
|
||||
|
||||
@assoc_item =
|
||||
@const
|
||||
| @function
|
||||
| @macro_call
|
||||
| @type_alias
|
||||
;
|
||||
|
||||
assoc_item_lists(
|
||||
unique int id: @assoc_item_list
|
||||
);
|
||||
@@ -448,13 +439,6 @@ closure_binder_generic_param_lists(
|
||||
| @yield_expr
|
||||
;
|
||||
|
||||
@extern_item =
|
||||
@function
|
||||
| @macro_call
|
||||
| @static
|
||||
| @type_alias
|
||||
;
|
||||
|
||||
extern_item_lists(
|
||||
unique int id: @extern_item_list
|
||||
);
|
||||
@@ -1911,19 +1895,16 @@ infer_type_reprs(
|
||||
|
||||
@item =
|
||||
@adt
|
||||
| @const
|
||||
| @assoc_item
|
||||
| @extern_block
|
||||
| @extern_crate
|
||||
| @function
|
||||
| @extern_item
|
||||
| @impl
|
||||
| @macro_call
|
||||
| @macro_def
|
||||
| @macro_rules
|
||||
| @module
|
||||
| @static
|
||||
| @trait
|
||||
| @trait_alias
|
||||
| @type_alias
|
||||
| @use
|
||||
;
|
||||
|
||||
@@ -2718,6 +2699,13 @@ adt_derive_macro_expansions(
|
||||
int derive_macro_expansion: @macro_items ref
|
||||
);
|
||||
|
||||
@assoc_item =
|
||||
@const
|
||||
| @function
|
||||
| @macro_call
|
||||
| @type_alias
|
||||
;
|
||||
|
||||
block_exprs(
|
||||
unique int id: @block_expr
|
||||
);
|
||||
@@ -2775,68 +2763,6 @@ call_expr_functions(
|
||||
int function: @expr ref
|
||||
);
|
||||
|
||||
consts(
|
||||
unique int id: @const
|
||||
);
|
||||
|
||||
#keyset[id, index]
|
||||
const_attrs(
|
||||
int id: @const ref,
|
||||
int index: int ref,
|
||||
int attr: @attr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_bodies(
|
||||
int id: @const ref,
|
||||
int body: @expr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_generic_param_lists(
|
||||
int id: @const ref,
|
||||
int generic_param_list: @generic_param_list ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_is_const(
|
||||
int id: @const ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_is_default(
|
||||
int id: @const ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_names(
|
||||
int id: @const ref,
|
||||
int name: @name ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_type_reprs(
|
||||
int id: @const ref,
|
||||
int type_repr: @type_repr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_visibilities(
|
||||
int id: @const ref,
|
||||
int visibility: @visibility ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_where_clauses(
|
||||
int id: @const ref,
|
||||
int where_clause: @where_clause ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_has_implementation(
|
||||
int id: @const ref
|
||||
);
|
||||
|
||||
extern_blocks(
|
||||
unique int id: @extern_block
|
||||
);
|
||||
@@ -2894,81 +2820,12 @@ extern_crate_visibilities(
|
||||
int visibility: @visibility ref
|
||||
);
|
||||
|
||||
functions(
|
||||
unique int id: @function
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_abis(
|
||||
int id: @function ref,
|
||||
int abi: @abi ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_bodies(
|
||||
int id: @function ref,
|
||||
int body: @block_expr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_generic_param_lists(
|
||||
int id: @function ref,
|
||||
int generic_param_list: @generic_param_list ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_is_async(
|
||||
int id: @function ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_is_const(
|
||||
int id: @function ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_is_default(
|
||||
int id: @function ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_is_gen(
|
||||
int id: @function ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_is_unsafe(
|
||||
int id: @function ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_names(
|
||||
int id: @function ref,
|
||||
int name: @name ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_ret_types(
|
||||
int id: @function ref,
|
||||
int ret_type: @ret_type_repr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_visibilities(
|
||||
int id: @function ref,
|
||||
int visibility: @visibility ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_where_clauses(
|
||||
int id: @function ref,
|
||||
int where_clause: @where_clause ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_has_implementation(
|
||||
int id: @function ref
|
||||
);
|
||||
@extern_item =
|
||||
@function
|
||||
| @macro_call
|
||||
| @static
|
||||
| @type_alias
|
||||
;
|
||||
|
||||
impls(
|
||||
unique int id: @impl
|
||||
@@ -3044,35 +2901,6 @@ looping_expr_loop_bodies(
|
||||
int loop_body: @block_expr ref
|
||||
);
|
||||
|
||||
macro_calls(
|
||||
unique int id: @macro_call
|
||||
);
|
||||
|
||||
#keyset[id, index]
|
||||
macro_call_attrs(
|
||||
int id: @macro_call ref,
|
||||
int index: int ref,
|
||||
int attr: @attr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
macro_call_paths(
|
||||
int id: @macro_call ref,
|
||||
int path: @path ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
macro_call_token_trees(
|
||||
int id: @macro_call ref,
|
||||
int token_tree: @token_tree ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
macro_call_macro_call_expansions(
|
||||
int id: @macro_call ref,
|
||||
int macro_call_expansion: @ast_node ref
|
||||
);
|
||||
|
||||
macro_defs(
|
||||
unique int id: @macro_def
|
||||
);
|
||||
@@ -3203,56 +3031,6 @@ path_pats(
|
||||
unique int id: @path_pat
|
||||
);
|
||||
|
||||
statics(
|
||||
unique int id: @static
|
||||
);
|
||||
|
||||
#keyset[id, index]
|
||||
static_attrs(
|
||||
int id: @static ref,
|
||||
int index: int ref,
|
||||
int attr: @attr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_bodies(
|
||||
int id: @static ref,
|
||||
int body: @expr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_is_mut(
|
||||
int id: @static ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_is_static(
|
||||
int id: @static ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_is_unsafe(
|
||||
int id: @static ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_names(
|
||||
int id: @static ref,
|
||||
int name: @name ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_type_reprs(
|
||||
int id: @static ref,
|
||||
int type_repr: @type_repr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_visibilities(
|
||||
int id: @static ref,
|
||||
int visibility: @visibility ref
|
||||
);
|
||||
|
||||
struct_exprs(
|
||||
unique int id: @struct_expr
|
||||
);
|
||||
@@ -3382,58 +3160,6 @@ tuple_struct_pat_fields(
|
||||
int field: @pat ref
|
||||
);
|
||||
|
||||
type_aliases(
|
||||
unique int id: @type_alias
|
||||
);
|
||||
|
||||
#keyset[id, index]
|
||||
type_alias_attrs(
|
||||
int id: @type_alias ref,
|
||||
int index: int ref,
|
||||
int attr: @attr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_generic_param_lists(
|
||||
int id: @type_alias ref,
|
||||
int generic_param_list: @generic_param_list ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_is_default(
|
||||
int id: @type_alias ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_names(
|
||||
int id: @type_alias ref,
|
||||
int name: @name ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_type_reprs(
|
||||
int id: @type_alias ref,
|
||||
int type_repr: @type_repr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_type_bound_lists(
|
||||
int id: @type_alias ref,
|
||||
int type_bound_list: @type_bound_list ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_visibilities(
|
||||
int id: @type_alias ref,
|
||||
int visibility: @visibility ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_where_clauses(
|
||||
int id: @type_alias ref,
|
||||
int where_clause: @where_clause ref
|
||||
);
|
||||
|
||||
uses(
|
||||
unique int id: @use
|
||||
);
|
||||
@@ -3457,6 +3183,68 @@ use_visibilities(
|
||||
int visibility: @visibility ref
|
||||
);
|
||||
|
||||
consts(
|
||||
unique int id: @const
|
||||
);
|
||||
|
||||
#keyset[id, index]
|
||||
const_attrs(
|
||||
int id: @const ref,
|
||||
int index: int ref,
|
||||
int attr: @attr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_bodies(
|
||||
int id: @const ref,
|
||||
int body: @expr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_generic_param_lists(
|
||||
int id: @const ref,
|
||||
int generic_param_list: @generic_param_list ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_is_const(
|
||||
int id: @const ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_is_default(
|
||||
int id: @const ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_names(
|
||||
int id: @const ref,
|
||||
int name: @name ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_type_reprs(
|
||||
int id: @const ref,
|
||||
int type_repr: @type_repr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_visibilities(
|
||||
int id: @const ref,
|
||||
int visibility: @visibility ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_where_clauses(
|
||||
int id: @const ref,
|
||||
int where_clause: @where_clause ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
const_has_implementation(
|
||||
int id: @const ref
|
||||
);
|
||||
|
||||
enums(
|
||||
unique int id: @enum
|
||||
);
|
||||
@@ -3521,6 +3309,82 @@ for_expr_pats(
|
||||
int pat: @pat ref
|
||||
);
|
||||
|
||||
functions(
|
||||
unique int id: @function
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_abis(
|
||||
int id: @function ref,
|
||||
int abi: @abi ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_bodies(
|
||||
int id: @function ref,
|
||||
int body: @block_expr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_generic_param_lists(
|
||||
int id: @function ref,
|
||||
int generic_param_list: @generic_param_list ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_is_async(
|
||||
int id: @function ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_is_const(
|
||||
int id: @function ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_is_default(
|
||||
int id: @function ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_is_gen(
|
||||
int id: @function ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_is_unsafe(
|
||||
int id: @function ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_names(
|
||||
int id: @function ref,
|
||||
int name: @name ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_ret_types(
|
||||
int id: @function ref,
|
||||
int ret_type: @ret_type_repr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_visibilities(
|
||||
int id: @function ref,
|
||||
int visibility: @visibility ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_where_clauses(
|
||||
int id: @function ref,
|
||||
int where_clause: @where_clause ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
function_has_implementation(
|
||||
int id: @function ref
|
||||
);
|
||||
|
||||
loop_exprs(
|
||||
unique int id: @loop_expr
|
||||
);
|
||||
@@ -3532,6 +3396,85 @@ loop_expr_attrs(
|
||||
int attr: @attr ref
|
||||
);
|
||||
|
||||
macro_calls(
|
||||
unique int id: @macro_call
|
||||
);
|
||||
|
||||
#keyset[id, index]
|
||||
macro_call_attrs(
|
||||
int id: @macro_call ref,
|
||||
int index: int ref,
|
||||
int attr: @attr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
macro_call_paths(
|
||||
int id: @macro_call ref,
|
||||
int path: @path ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
macro_call_token_trees(
|
||||
int id: @macro_call ref,
|
||||
int token_tree: @token_tree ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
macro_call_macro_call_expansions(
|
||||
int id: @macro_call ref,
|
||||
int macro_call_expansion: @ast_node ref
|
||||
);
|
||||
|
||||
statics(
|
||||
unique int id: @static
|
||||
);
|
||||
|
||||
#keyset[id, index]
|
||||
static_attrs(
|
||||
int id: @static ref,
|
||||
int index: int ref,
|
||||
int attr: @attr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_bodies(
|
||||
int id: @static ref,
|
||||
int body: @expr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_is_mut(
|
||||
int id: @static ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_is_static(
|
||||
int id: @static ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_is_unsafe(
|
||||
int id: @static ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_names(
|
||||
int id: @static ref,
|
||||
int name: @name ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_type_reprs(
|
||||
int id: @static ref,
|
||||
int type_repr: @type_repr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
static_visibilities(
|
||||
int id: @static ref,
|
||||
int visibility: @visibility ref
|
||||
);
|
||||
|
||||
structs(
|
||||
unique int id: @struct
|
||||
);
|
||||
@@ -3573,6 +3516,58 @@ struct_where_clauses(
|
||||
int where_clause: @where_clause ref
|
||||
);
|
||||
|
||||
type_aliases(
|
||||
unique int id: @type_alias
|
||||
);
|
||||
|
||||
#keyset[id, index]
|
||||
type_alias_attrs(
|
||||
int id: @type_alias ref,
|
||||
int index: int ref,
|
||||
int attr: @attr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_generic_param_lists(
|
||||
int id: @type_alias ref,
|
||||
int generic_param_list: @generic_param_list ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_is_default(
|
||||
int id: @type_alias ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_names(
|
||||
int id: @type_alias ref,
|
||||
int name: @name ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_type_reprs(
|
||||
int id: @type_alias ref,
|
||||
int type_repr: @type_repr ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_type_bound_lists(
|
||||
int id: @type_alias ref,
|
||||
int type_bound_list: @type_bound_list ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_visibilities(
|
||||
int id: @type_alias ref,
|
||||
int visibility: @visibility ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_alias_where_clauses(
|
||||
int id: @type_alias ref,
|
||||
int where_clause: @where_clause ref
|
||||
);
|
||||
|
||||
unions(
|
||||
unique int id: @union
|
||||
);
|
||||
|
||||
@@ -914,7 +914,7 @@ class _:
|
||||
"""
|
||||
|
||||
|
||||
@annotate(AssocItem)
|
||||
@annotate(AssocItem, replace_bases={AstNode: Item})
|
||||
class _:
|
||||
"""
|
||||
An associated item in a `Trait` or `Impl`.
|
||||
@@ -985,7 +985,7 @@ class _:
|
||||
"""
|
||||
|
||||
|
||||
@annotate(Const)
|
||||
@annotate(Const, replace_bases={Item: None})
|
||||
class _:
|
||||
"""
|
||||
A constant item declaration.
|
||||
@@ -1078,7 +1078,7 @@ class _:
|
||||
"""
|
||||
|
||||
|
||||
@annotate(ExternItem)
|
||||
@annotate(ExternItem, replace_bases={AstNode: Item})
|
||||
class _:
|
||||
"""
|
||||
An item inside an extern block.
|
||||
@@ -1359,7 +1359,7 @@ class _:
|
||||
"""
|
||||
|
||||
|
||||
@annotate(MacroCall, cfg=True)
|
||||
@annotate(MacroCall, cfg=True, replace_bases={Item: None})
|
||||
class _:
|
||||
"""
|
||||
A macro invocation.
|
||||
@@ -1807,7 +1807,7 @@ class _:
|
||||
"""
|
||||
|
||||
|
||||
@annotate(Static)
|
||||
@annotate(Static, replace_bases={Item: None})
|
||||
class _:
|
||||
"""
|
||||
A static item declaration.
|
||||
@@ -1947,7 +1947,7 @@ class _:
|
||||
"""
|
||||
|
||||
|
||||
@annotate(TypeAlias)
|
||||
@annotate(TypeAlias, replace_bases={Item: None})
|
||||
class _:
|
||||
"""
|
||||
A type alias. For example:
|
||||
@@ -2143,7 +2143,7 @@ class _:
|
||||
loop_body: drop
|
||||
|
||||
|
||||
@annotate(Function, add_bases=[Callable])
|
||||
@annotate(Function, add_bases=[Callable], replace_bases={Item: None})
|
||||
class _:
|
||||
param_list: drop
|
||||
attrs: drop
|
||||
|
||||
Reference in New Issue
Block a user