mirror of
https://github.com/github/codeql.git
synced 2025-12-16 16:53:25 +01:00
Rust: regenerate code
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 855f5f0639dfafd8603c9b842f6470ca6d1214bb72391890a1de64db2adebba1 855f5f0639dfafd8603c9b842f6470ca6d1214bb72391890a1de64db2adebba1
|
||||
top.rs 00321b829ffca674c66daa86c003b9d5f8c64fef42873d03fa677cfa479039a2 00321b829ffca674c66daa86c003b9d5f8c64fef42873d03fa677cfa479039a2
|
||||
|
||||
104
rust/extractor/src/generated/top.rs
generated
104
rust/extractor/src/generated/top.rs
generated
@@ -1032,6 +1032,110 @@ impl From<trap::Label<Lifetime>> for trap::Label<Locatable> {
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct MacroItems {
|
||||
pub id: trap::TrapId<MacroItems>,
|
||||
pub items: Vec<trap::Label<Item>>,
|
||||
}
|
||||
|
||||
impl trap::TrapEntry for MacroItems {
|
||||
fn extract_id(&mut self) -> trap::TrapId<Self> {
|
||||
std::mem::replace(&mut self.id, trap::TrapId::Star)
|
||||
}
|
||||
|
||||
fn emit(self, id: trap::Label<Self>, out: &mut trap::Writer) {
|
||||
out.add_tuple("macro_items", vec![id.into()]);
|
||||
for (i, v) in self.items.into_iter().enumerate() {
|
||||
out.add_tuple("macro_items_items", vec![id.into(), i.into(), v.into()]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl trap::TrapClass for MacroItems {
|
||||
fn class_name() -> &'static str { "MacroItems" }
|
||||
}
|
||||
|
||||
impl From<trap::Label<MacroItems>> for trap::Label<AstNode> {
|
||||
fn from(value: trap::Label<MacroItems>) -> Self {
|
||||
// SAFETY: this is safe because in the dbscheme MacroItems is a subclass of AstNode
|
||||
unsafe {
|
||||
Self::from_untyped(value.as_untyped())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<trap::Label<MacroItems>> for trap::Label<Element> {
|
||||
fn from(value: trap::Label<MacroItems>) -> Self {
|
||||
// SAFETY: this is safe because in the dbscheme MacroItems is a subclass of Element
|
||||
unsafe {
|
||||
Self::from_untyped(value.as_untyped())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<trap::Label<MacroItems>> for trap::Label<Locatable> {
|
||||
fn from(value: trap::Label<MacroItems>) -> Self {
|
||||
// SAFETY: this is safe because in the dbscheme MacroItems is a subclass of Locatable
|
||||
unsafe {
|
||||
Self::from_untyped(value.as_untyped())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct MacroStmts {
|
||||
pub id: trap::TrapId<MacroStmts>,
|
||||
pub expr: Option<trap::Label<Expr>>,
|
||||
pub statements: Vec<trap::Label<Stmt>>,
|
||||
}
|
||||
|
||||
impl trap::TrapEntry for MacroStmts {
|
||||
fn extract_id(&mut self) -> trap::TrapId<Self> {
|
||||
std::mem::replace(&mut self.id, trap::TrapId::Star)
|
||||
}
|
||||
|
||||
fn emit(self, id: trap::Label<Self>, out: &mut trap::Writer) {
|
||||
out.add_tuple("macro_stmts", vec![id.into()]);
|
||||
if let Some(v) = self.expr {
|
||||
out.add_tuple("macro_stmts_exprs", vec![id.into(), v.into()]);
|
||||
}
|
||||
for (i, v) in self.statements.into_iter().enumerate() {
|
||||
out.add_tuple("macro_stmts_statements", vec![id.into(), i.into(), v.into()]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl trap::TrapClass for MacroStmts {
|
||||
fn class_name() -> &'static str { "MacroStmts" }
|
||||
}
|
||||
|
||||
impl From<trap::Label<MacroStmts>> for trap::Label<AstNode> {
|
||||
fn from(value: trap::Label<MacroStmts>) -> Self {
|
||||
// SAFETY: this is safe because in the dbscheme MacroStmts is a subclass of AstNode
|
||||
unsafe {
|
||||
Self::from_untyped(value.as_untyped())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<trap::Label<MacroStmts>> for trap::Label<Element> {
|
||||
fn from(value: trap::Label<MacroStmts>) -> Self {
|
||||
// SAFETY: this is safe because in the dbscheme MacroStmts is a subclass of Element
|
||||
unsafe {
|
||||
Self::from_untyped(value.as_untyped())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<trap::Label<MacroStmts>> for trap::Label<Locatable> {
|
||||
fn from(value: trap::Label<MacroStmts>) -> Self {
|
||||
// SAFETY: this is safe because in the dbscheme MacroStmts is a subclass of Locatable
|
||||
unsafe {
|
||||
Self::from_untyped(value.as_untyped())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct MatchArm {
|
||||
pub id: trap::TrapId<MatchArm>,
|
||||
|
||||
20
rust/ql/.generated.list
generated
20
rust/ql/.generated.list
generated
@@ -67,8 +67,10 @@ lib/codeql/rust/elements/LoopExpr.qll 58ade0bc4a01a1cc361363682fde3ea56f4c5fbb4b
|
||||
lib/codeql/rust/elements/MacroCall.qll 16933db15c6c0dbb717ef442f751ad8f63c444f36a12f8d56b8a05a3e5f71d1b ac05cbf50e4b06f39f58817cddbeac6f804c2d1e4f60956a960d63d495e7183d
|
||||
lib/codeql/rust/elements/MacroDef.qll acb39275a1a3257084314a46ad4d8477946130f57e401c70c5949ad6aafc5c5f 6a8a8db12a3ec345fede51ca36e8c6acbdce58c5144388bb94f0706416fa152a
|
||||
lib/codeql/rust/elements/MacroExpr.qll ea9fed13f610bab1a2c4541c994510e0cb806530b60beef0d0c36b23e3b620f0 ad11a6bbd3a229ad97a16049cc6b0f3c8740f9f75ea61bbf4eebb072db9b12d2
|
||||
lib/codeql/rust/elements/MacroItems.qll 4acf8e5ab8f84dc8fae442d52a29266be2f1e7160120bb1dd52238b3d62b4cab 0d6e25bbf1f3082b739bb846d7c3ef21a58c79e6a65b72272a00cffc3d32aa47
|
||||
lib/codeql/rust/elements/MacroPat.qll dbf193b4fb544ac0b5a7dcfc31a6652de7239b6e643ff15b05868b2c142e940c 19b45c0a1eb1198e450c05d564b5d4aa0d6da29e7db84b9521eadf901e20a932
|
||||
lib/codeql/rust/elements/MacroRules.qll a94535506798077043b9c1470992ac4310bf67bcce5f722080886d1b3e6d90d1 bd8e08a7171991abc85100b45267631e66d1b332caf1e5882cd17caee5cf18a3
|
||||
lib/codeql/rust/elements/MacroStmts.qll 66b3e877c4e3f8ef552152c92188aae7d5901a7b2e21dec581a61ee390be2fbc cc535cb6afb29783be37b1647d3267dd693c3434d42e1ab561d3a6a74ce20cfc
|
||||
lib/codeql/rust/elements/MacroType.qll e5a153643e49a6be41483ad944550a030e0500764947b4e328cef6fa08c4fbd4 a42332c0a9c5cf7317fc49f3e1049e7751004fcc3efa056bbe058a8bfa2ef0cb
|
||||
lib/codeql/rust/elements/MatchArm.qll c39fd6cc0da24b1ff8d1e42835bcfee7695ad13580e3c7c50acd7c881b1cd894 62a31d2bd125e6aaebefc406e541a641271d3c497a377959f94dd4735b2bfbf8
|
||||
lib/codeql/rust/elements/MatchArmList.qll e6c48fd7419d88e996b82eb45e4aa2686dfd079b283b02be7710192fb2cb93a0 0ec63a0ca56f5f7f80093fd3e77b198b74c6289e67be55dc6a4deb610753c7bd
|
||||
@@ -274,10 +276,14 @@ lib/codeql/rust/elements/internal/MacroDefConstructor.qll 382a3bdf46905d112ee491
|
||||
lib/codeql/rust/elements/internal/MacroDefImpl.qll f26e787ffd43e8cb079db01eba04412dbf32c338938acf1bc09a2f094bbdfdfe 044f43bc94fe4b6df22afae32e9f039d1d0d9e85ad9f24b6388be71211c37ce5
|
||||
lib/codeql/rust/elements/internal/MacroExprConstructor.qll b12edb21ea189a1b28d96309c69c3d08e08837621af22edd67ff9416c097d2df d35bc98e7b7b5451930214c0d93dce33a2c7b5b74f36bf99f113f53db1f19c14
|
||||
lib/codeql/rust/elements/internal/MacroExprImpl.qll 92dd9f658a85ae407e055f090385f451084de59190d8a00c7e1fba453c3eced4 89d544634fecdbead2ff06a26fc8132e127dab07f38b9322fa14dc55657b9f1a
|
||||
lib/codeql/rust/elements/internal/MacroItemsConstructor.qll 8e9ab7ec1e0f50a22605d4e993f99a85ca8059fbb506d67bc8f5a281af367b05 2602f9db31ea0c48192c3dde3bb5625a8ed1cae4cd3408729b9e09318d5bd071
|
||||
lib/codeql/rust/elements/internal/MacroItemsImpl.qll b20e9d0ba72de335ae1df33318339c9546c7f4c7ff25b3bf6eec884a2faa33bd 3bb159223eecb566004ce27457d5d97cd676f632be14b0411ff228a1d4e8e107
|
||||
lib/codeql/rust/elements/internal/MacroPatConstructor.qll 24744c1bbe21c1d249a04205fb09795ae38ed106ba1423e86ccbc5e62359eaa2 4fac3f731a1ffd87c1230d561c5236bd28dcde0d1ce0dcd7d7a84ba393669d4a
|
||||
lib/codeql/rust/elements/internal/MacroPatImpl.qll 7470e2d88c38c7300a64986f058ba92bb22b4945438e2e0e268f180c4f267b71 c1507df74fc4c92887f3e0a4f857f54b61f174ffae5b1af6fb70f466175d658b
|
||||
lib/codeql/rust/elements/internal/MacroRulesConstructor.qll dc04726ad59915ec980501c4cd3b3d2ad774f454ddbf138ff5808eba6bd63dea 8d6bf20feb850c47d1176237027ef131f18c5cbb095f6ab8b3ec58cea9bce856
|
||||
lib/codeql/rust/elements/internal/MacroRulesImpl.qll 10c03adfb63ee7a4348ff5cffc6ef5300a531b048f28811a51e940b053e69f68 2498bd64aeaea9849c086abeaa6c248e4ce41b4436155f4bd4840965976d5d54
|
||||
lib/codeql/rust/elements/internal/MacroStmtsConstructor.qll c293815cd69c002ba6de1db6018672654420f3f8bdd143f9d0c620adddd2be02 d376f8f07661a8cad1b10039076fd7fca353dcacf3ca40ed6507b8c874e849ca
|
||||
lib/codeql/rust/elements/internal/MacroStmtsImpl.qll 7ce09c93fedbb6453fccbc081e7ec03d2e2a088c8ff3b27e28794258ac6ff553 d48681d5ed630a1b8d563d58fdb91aa32a73e3b21420d986c8e5415c9f80280f
|
||||
lib/codeql/rust/elements/internal/MacroTypeConstructor.qll 0a23573a6f69b38f3d7470050b16197601d67bdd5a4b1a43a155b0b99ccdf6b5 19b623962e8e1f73e55e3ed9712d2a3fe84b9510b99062173902feb2458ec12a
|
||||
lib/codeql/rust/elements/internal/MacroTypeImpl.qll b8711279f09f521b05bb67568c089271b7913f863ee64dfdeec2c502de2cbdc8 51bd9d3a2fb2065bce7b193b485e225ca5c8ba2029e60cab427d43a90baf0880
|
||||
lib/codeql/rust/elements/internal/MatchArmConstructor.qll b41c1d5822d54127ce376ef62c6a5fa60e11697319fc7d9c9c54fd313d784a93 96cca80e5684e5893c0e9c0dff365ef8ad9e15ff648c9969ba42d91f95abea05
|
||||
@@ -512,8 +518,10 @@ lib/codeql/rust/elements/internal/generated/LoopExpr.qll 22b755dfaf238ecea722c0c
|
||||
lib/codeql/rust/elements/internal/generated/MacroCall.qll 8b49d44e6aeac26dc2fc4b9ba03c482c65ebf0cba089d16f9d65e784e48ccbb0 9ecf6e278007adcbdc42ed1c10e7b1c0652b6c64738b780d256c9326afa3b393
|
||||
lib/codeql/rust/elements/internal/generated/MacroDef.qll e9b3f07ba41aa12a8e0bd6ec1437b26a6c363065ce134b6d059478e96c2273a6 87470dea99da1a6afb3a19565291f9382e851ba864b50a995ac6f29589efbd70
|
||||
lib/codeql/rust/elements/internal/generated/MacroExpr.qll 03a1daa41866f51e479ac20f51f8406d04e9946b24f3875e3cf75a6b172c3d35 1ae8ca0ee96bd2be32575d87c07cc999a6ff7770151b66c0e3406f9454153786
|
||||
lib/codeql/rust/elements/internal/generated/MacroItems.qll ec02912230762f2759c3ed97ff52fded62ed14fb68d0807c8085a85152a5d4b1 c9cc4f8f0a1d63787995dde173f1bc8ac25351faa66b1d323e2ac1c894c9be85
|
||||
lib/codeql/rust/elements/internal/generated/MacroPat.qll 9e927e09d47029a3025eaad271c975e73479a80ea933c921381b6c9d751f2866 bdf5c58ca27743eb2e2dae2aeea3f3fc21f8a4f98fe1001598876455c88e8f69
|
||||
lib/codeql/rust/elements/internal/generated/MacroRules.qll 4fbd94f22b5ee0f3e5aaae39c2b9a5e9b7bf878a1017811ca589942f6de92843 49fb69543ee867bae196febea6918e621f335afdf4d3ccbf219965b37c7537b1
|
||||
lib/codeql/rust/elements/internal/generated/MacroStmts.qll 502cf5490259edaefeda30d00371a9d58872e8bfcd82fa4a30a2a1c510662949 91672ea8c4c0e1e8ef6c9628e21169dfc873da4424aaf544a3cb2b9a2c523b28
|
||||
lib/codeql/rust/elements/internal/generated/MacroType.qll c462824df4a002956c036966d15cd0bce206e664888f8d0c7834dedb38b3c0bf 947480f07c40128ef3d00ad4c3a29a685472b3e20a661680c22f6bb318205ed1
|
||||
lib/codeql/rust/elements/internal/generated/MatchArm.qll 8fb740a0f2e308782d9cf390672969cd7cf6e698e5b847fb02ae3fa6c205646f 42bfe8dd94fc24ec925fbd44016df111600f99d1216c9a698631373bb6048830
|
||||
lib/codeql/rust/elements/internal/generated/MatchArmList.qll 13362680c037fe83fef4653562cc10a4429078316b5ec7c47b076336cf4aca2e 41c674293c13eceaca62134ae0c6778541f6a5201cbc5c146f0ba01b898dc267
|
||||
@@ -533,7 +541,7 @@ lib/codeql/rust/elements/internal/generated/ParamList.qll c808c9d84dd7800573832b
|
||||
lib/codeql/rust/elements/internal/generated/ParenExpr.qll bc0731505bfe88516205ec360582a4222d2681d11342c93e15258590ddee82f2 d4bd6e0c80cf1d63746c88d4bcb3a01d4c75732e5da09e3ebd9437ced227fb60
|
||||
lib/codeql/rust/elements/internal/generated/ParenPat.qll ce24b8f8ecbf0f204af200317405724063887257460c80cf250c39b2fdf37185 e7c87d37e1a0ca7ea03840017e1aa9ddb7f927f1f3b6396c0305b46aeee33db6
|
||||
lib/codeql/rust/elements/internal/generated/ParenType.qll 9cc954d73f8330dcac7b475f97748b63af5c8766dee9d2f2872c0a7e4c903537 c07534c8a9c683c4a9b11d490095647e420de0a0bfc23273eaf6f31b00244273
|
||||
lib/codeql/rust/elements/internal/generated/ParentChild.qll ad728d69b3ef9555d71db2274b04a5ba99b4f815120c55032c57d077e0c954ca 64c6406626a14ed3052d3996cc47fc91e435175bd982440d948416cf878400fd
|
||||
lib/codeql/rust/elements/internal/generated/ParentChild.qll 3a14261d30beea704042dea144ef1972a93b8384eb258c6f8ff6c8254264c0e2 9fbf1176a5822728097e4c33dfefc057e381c662058b339007bea7273b6b27c6
|
||||
lib/codeql/rust/elements/internal/generated/Pat.qll 3605ac062be2f294ee73336e9669027b8b655f4ad55660e1eab35266275154ee 7f9400db2884d336dd1d21df2a8093759c2a110be9bf6482ce8e80ae0fd74ed4
|
||||
lib/codeql/rust/elements/internal/generated/Path.qll 299abce24762a5ab023f3cf1ab9718b83047e171aed42a8092e7a155914b1657 db1a23d18640c548f08c9f94823838b5e019ac85877c7b15df2d1493d1846572
|
||||
lib/codeql/rust/elements/internal/generated/PathExpr.qll 17cdb0a7393258a207450f08e37178fc9d35d167f064ba6015be94246f3dc933 a75fdd280aff6d87e083a92030e041c2eb52b57cf7151d4a6989fcd31d6a64bf
|
||||
@@ -545,7 +553,7 @@ lib/codeql/rust/elements/internal/generated/PtrType.qll 5f12b6ad29b4e5ce51c205e2
|
||||
lib/codeql/rust/elements/internal/generated/PureSynthConstructors.qll dc03515d678ba052c2ff2dd9f0883e0bce54cac740ba9a15e5173f292c1b6971 dc03515d678ba052c2ff2dd9f0883e0bce54cac740ba9a15e5173f292c1b6971
|
||||
lib/codeql/rust/elements/internal/generated/RangeExpr.qll 23cca03bf43535f33b22a38894f70d669787be4e4f5b8fe5c8f7b964d30e9027 18624cef6c6b679eeace2a98737e472432e0ead354cca02192b4d45330f047c9
|
||||
lib/codeql/rust/elements/internal/generated/RangePat.qll efd93730de217cf50dcba5875595263a5eadf9f7e4e1272401342a094d158614 229b251b3d118932e31e78ac4dfb75f48b766f240f20d436062785606d44467b
|
||||
lib/codeql/rust/elements/internal/generated/Raw.qll 783c3d04b798c0a5281baf88aa3ada406492e6e6b8ff41dac658d52c88f95c46 e69891409fc89f0a3a199feb6f1a734bfdd862239a5f6794de0ee811e69fab04
|
||||
lib/codeql/rust/elements/internal/generated/Raw.qll 32faaa3ad1bd2e1bc0d588caed9ef629f1bd3f2cef3d43a2edea7b3c7d14467d a64b8cf08ef39876a7b3e33555c3305cba320d80acc8dead5ec8be6dd1fe225f
|
||||
lib/codeql/rust/elements/internal/generated/RecordExpr.qll eb6cb662e463f9260efae1a6ce874fa781172063b916ef1963f861e9942d308d 1a21cbccc8f3799ff13281e822818ebfb21d81591720a427cac3625512cb9d40
|
||||
lib/codeql/rust/elements/internal/generated/RecordExprField.qll 7e9f8663d3b74ebbc9603b10c9912f082febba6bd73d344b100bbd3edf837802 fbe6b578e7fd5d5a6f21bbb8c388957ab7210a6a249ec71510a50fb35b319ea1
|
||||
lib/codeql/rust/elements/internal/generated/RecordExprFieldList.qll 179a97211fe7aa6265085d4d54115cdbc0e1cd7c9b2135591e8f36d6432f13d3 dd44bbbc1e83a1ed3a587afb729d7debf7aeb7b63245de181726af13090e50c0
|
||||
@@ -570,8 +578,8 @@ lib/codeql/rust/elements/internal/generated/Static.qll cae5313e08e4af44c46b25802
|
||||
lib/codeql/rust/elements/internal/generated/Stmt.qll 8473ff532dd5cc9d7decaddcd174b94d610f6ca0aec8e473cc051dad9f3db917 6ef7d2b5237c2dbdcacbf7d8b39109d4dc100229f2b28b5c9e3e4fbf673ba72b
|
||||
lib/codeql/rust/elements/internal/generated/StmtList.qll a667193e32341e17400867c6e359878c4e645ef9f5f4d97676afc0283a33a026 a320ed678ee359302e2fc1b70a9476705cd616fcfa44a499d32f0c7715627f73
|
||||
lib/codeql/rust/elements/internal/generated/Struct.qll 4d57f0db12dc7ad3e31e750a24172ef1505406b4dab16386af0674bd18bf8f4b 1a73c83df926b996f629316f74c61ea775be04532ab61b56af904223354f033e
|
||||
lib/codeql/rust/elements/internal/generated/Synth.qll 99fa143232f2cfb1ef3f6ed6a51afa634c336361105e37719ce11ca6c74de8ee b3b77e1bdea36022b3be7cef000e7113059eb8b2b1afec26ae1d62e84259143b
|
||||
lib/codeql/rust/elements/internal/generated/SynthConstructors.qll 518b68ccf6d0791bc0c141486261108bb1723e37743fc7f8e4167a1d61660531 518b68ccf6d0791bc0c141486261108bb1723e37743fc7f8e4167a1d61660531
|
||||
lib/codeql/rust/elements/internal/generated/Synth.qll 2ab340e385c8c759132040f8317480e29b881fc06652d9ac79d3a6c7ba226e43 a302504aff25f9c8da4aa6a0d83eb7daa7a18496cf71654be925dda460c28b61
|
||||
lib/codeql/rust/elements/internal/generated/SynthConstructors.qll 5d30b6d4f36791637f250734ee38820102c64f196454e20f79e30097da1a8e20 5d30b6d4f36791637f250734ee38820102c64f196454e20f79e30097da1a8e20
|
||||
lib/codeql/rust/elements/internal/generated/Token.qll 77a91a25ca5669703cf3a4353b591cef4d72caa6b0b9db07bb9e005d69c848d1 2fdffc4882ed3a6ca9ac6d1fb5f1ac5a471ca703e2ffdc642885fa558d6e373b
|
||||
lib/codeql/rust/elements/internal/generated/TokenTree.qll 8577c2b097c1be2f0f7daa5acfcf146f78674a424d99563e08a84dd3e6d91b46 d2f30764e84dbfc0a6a5d3d8a5f935cd432413688cb32da9c94e420fbc10665c
|
||||
lib/codeql/rust/elements/internal/generated/Trait.qll 32bdbb4dc9f03488195a90320a947013135cd2fae1b9d62b4f71ed9a4e39a967 5dab0fbec64698bf3cdae04879d3d1665cf82386b7b030ed69e6b20776ffa9fc
|
||||
@@ -605,7 +613,7 @@ lib/codeql/rust/elements/internal/generated/WhileExpr.qll fec8a9211b82a80601bf73
|
||||
lib/codeql/rust/elements/internal/generated/WildcardPat.qll d74b70b57a0a66bfae017a329352a5b27a6b9e73dd5521d627f680e810c6c59e 4b913b548ba27ff3c82fcd32cf996ff329cb57d176d3bebd0fcef394486ea499
|
||||
lib/codeql/rust/elements/internal/generated/YeetExpr.qll cac328200872a35337b4bcb15c851afb4743f82c080f9738d295571eb01d7392 94af734eea08129b587fed849b643e7572800e8330c0b57d727d41abda47930b
|
||||
lib/codeql/rust/elements/internal/generated/YieldExpr.qll 37e5f0c1e373a22bbc53d8b7f2c0e1f476e5be5080b8437c5e964f4e83fad79a 4a9a68643401637bf48e5c2b2f74a6bf0ddcb4ff76f6bffb61d436b685621e85
|
||||
lib/codeql/rust/elements.qll 926e6e5f994ef7fcd04854c4d69004d7bfd81950e132c9d3d501b4b2420db222 926e6e5f994ef7fcd04854c4d69004d7bfd81950e132c9d3d501b4b2420db222
|
||||
lib/codeql/rust/elements.qll c4c6906be828eb2fa9cc5dcaf4df197a45c8e1c606f8665ca9e58c24715fd077 c4c6906be828eb2fa9cc5dcaf4df197a45c8e1c606f8665ca9e58c24715fd077
|
||||
test/extractor-tests/generated/Abi/Abi.ql 7f6e7dc4af86eca3ebdc79b10373988cd0871bd78b51997d3cffd969105e5fdd 2f936b6ca005c6157c755121584410c03e4a3949c23bee302fbe05ee10ce118f
|
||||
test/extractor-tests/generated/Abi/Abi_getAbiString.ql a496762fcec5a0887b87023bbf93e9b650f02e20113e25c44d6e4281ae8f5335 14109c7ce11ba25e3cd6e7f1b3fcb4cb00622f2a4eac91bfe43145c5f366bc52
|
||||
test/extractor-tests/generated/ArgList/ArgList.ql e412927756e72165d0e7c5c9bd3fca89d08197bbf760db8fb7683c64bb2229bc 043dba8506946fbb87753e22c387987d7eded6ddb963aa067f9e60ef9024d684
|
||||
@@ -820,6 +828,7 @@ test/extractor-tests/generated/MacroDef/MacroDef_getName.ql 6bc8a17804f23782e98f
|
||||
test/extractor-tests/generated/MacroDef/MacroDef_getVisibility.ql d858ccaab381432c529bf4a621afc82ea5e4b810b463f2b1f551de79908e14e7 83a85c4f90417ab44570a862642d8f8fc9208e62ba20ca69b32d39a3190381aa
|
||||
test/extractor-tests/generated/MacroExpr/MacroExpr.ql 69445cf24f5bec5c3f11f0ebf13604891bb2c0dffe715612628e5572587c7a6c 5434db79d94e437c86126d9cf20bf1e86e5537f462a57b9bf6b22a2caa95cc40
|
||||
test/extractor-tests/generated/MacroExpr/MacroExpr_getMacroCall.ql 8859743e23b987225a6a1933054a1ed8f5f1442b61a769599e2efd143f4feb9e d2d336135ff4d2ea65e79430dee8d0f69f9d7818a674f5446903d986f3948b92
|
||||
test/extractor-tests/generated/MacroItems/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1
|
||||
test/extractor-tests/generated/MacroPat/MacroPat.ql d9ec72d4d6a7342ee2d9aa7e90227faa31792ca5842fe948d7fdf22597a123b7 74b0f21ef2bb6c13aae74dba1eea97451755110909a083360e2c56cfbc76fd91
|
||||
test/extractor-tests/generated/MacroPat/MacroPat_getMacroCall.ql 398996f0d0f2aa6d3b58d80b26c7d1185b5094d455c6c5c7f075f6d414150aa6 b4662e57cac36ed0e692201f53ba46c3d0826bba99c5cc6dfcb302b44dd2154b
|
||||
test/extractor-tests/generated/MacroRules/MacroRules.ql 0742faf18179fa34e0f43361e9e4b807bfc242d232f6b3664a35e138a47d39c5 10e1cf45f32a27cb46bd61f5dd45416e2c0c9f25e880f6d213597a7d96e19103
|
||||
@@ -827,6 +836,7 @@ test/extractor-tests/generated/MacroRules/MacroRules_getAttr.ql 7de501c724e34655
|
||||
test/extractor-tests/generated/MacroRules/MacroRules_getName.ql 591606e3accae8b8fb49e1218c4867a42724ac209cf99786db0e5d7ea0bf55d5 d2936ef5aa4bbf024372516dde3de578990aafb2b8675bbbf0f72e8b54eb82a8
|
||||
test/extractor-tests/generated/MacroRules/MacroRules_getTokenTree.ql 7598d33c3d86f9ad8629219b90667b2b65e3a1e18c6b0887291df9455a319cab 69d90446743e78e851145683c17677497fe42ed02f61f2b2974e216dc6e05b01
|
||||
test/extractor-tests/generated/MacroRules/MacroRules_getVisibility.ql 5306cc85f470d21ebcbe6e98436334b0bf5ba819a0ae186569ba7e88c31636c6 fcbf5c54e5a904767a6f4d37d853072aa0040738e622c49c9a02dec8739d6587
|
||||
test/extractor-tests/generated/MacroStmts/MISSING_SOURCE.txt b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1 b6cf5771fdbbe981aeb3f443ec7a40517b6e99ffc9817fd8872c2e344240dae1
|
||||
test/extractor-tests/generated/MacroType/MacroType.ql 408327fdb4d7cf096536457401cc280f83cd7e4f6fa9aebd65e64031f6c119cf 0c502d25194ab96eb068a85e3f57a9217510a951fa923e9d7a20fd75412bd6da
|
||||
test/extractor-tests/generated/MacroType/MacroType_getMacroCall.ql 565be7a72670218d7999d3f6cec4e704b754c217186243f1b24c334589fa82e2 ba413c712783320188800e2a78738b09c40fe9a6305c08d9e67e971a8fca96ee
|
||||
test/extractor-tests/generated/MatchArm/MatchArm.ql 512aa404c94ba40b859564f07e9dffe6a5e687fafb039556e9145f4f3742981c 529f96e38cede8a26054f8981d4ba1d189c17d14d0f92d622eb20acd8f3d7e5d
|
||||
|
||||
10
rust/ql/.gitattributes
generated
vendored
10
rust/ql/.gitattributes
generated
vendored
@@ -69,8 +69,10 @@
|
||||
/lib/codeql/rust/elements/MacroCall.qll linguist-generated
|
||||
/lib/codeql/rust/elements/MacroDef.qll linguist-generated
|
||||
/lib/codeql/rust/elements/MacroExpr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/MacroItems.qll linguist-generated
|
||||
/lib/codeql/rust/elements/MacroPat.qll linguist-generated
|
||||
/lib/codeql/rust/elements/MacroRules.qll linguist-generated
|
||||
/lib/codeql/rust/elements/MacroStmts.qll linguist-generated
|
||||
/lib/codeql/rust/elements/MacroType.qll linguist-generated
|
||||
/lib/codeql/rust/elements/MatchArm.qll linguist-generated
|
||||
/lib/codeql/rust/elements/MatchArmList.qll linguist-generated
|
||||
@@ -276,10 +278,14 @@
|
||||
/lib/codeql/rust/elements/internal/MacroDefImpl.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MacroExprConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MacroExprImpl.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MacroItemsConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MacroItemsImpl.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MacroPatConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MacroPatImpl.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MacroRulesConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MacroRulesImpl.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MacroStmtsConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MacroStmtsImpl.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MacroTypeConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MacroTypeImpl.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/MatchArmConstructor.qll linguist-generated
|
||||
@@ -514,8 +520,10 @@
|
||||
/lib/codeql/rust/elements/internal/generated/MacroCall.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/MacroDef.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/MacroExpr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/MacroItems.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/MacroPat.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/MacroRules.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/MacroStmts.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/MacroType.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/MatchArm.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/MatchArmList.qll linguist-generated
|
||||
@@ -822,6 +830,7 @@
|
||||
/test/extractor-tests/generated/MacroDef/MacroDef_getVisibility.ql linguist-generated
|
||||
/test/extractor-tests/generated/MacroExpr/MacroExpr.ql linguist-generated
|
||||
/test/extractor-tests/generated/MacroExpr/MacroExpr_getMacroCall.ql linguist-generated
|
||||
/test/extractor-tests/generated/MacroItems/MISSING_SOURCE.txt linguist-generated
|
||||
/test/extractor-tests/generated/MacroPat/MacroPat.ql linguist-generated
|
||||
/test/extractor-tests/generated/MacroPat/MacroPat_getMacroCall.ql linguist-generated
|
||||
/test/extractor-tests/generated/MacroRules/MacroRules.ql linguist-generated
|
||||
@@ -829,6 +838,7 @@
|
||||
/test/extractor-tests/generated/MacroRules/MacroRules_getName.ql linguist-generated
|
||||
/test/extractor-tests/generated/MacroRules/MacroRules_getTokenTree.ql linguist-generated
|
||||
/test/extractor-tests/generated/MacroRules/MacroRules_getVisibility.ql linguist-generated
|
||||
/test/extractor-tests/generated/MacroStmts/MISSING_SOURCE.txt linguist-generated
|
||||
/test/extractor-tests/generated/MacroType/MacroType.ql linguist-generated
|
||||
/test/extractor-tests/generated/MacroType/MacroType_getMacroCall.ql linguist-generated
|
||||
/test/extractor-tests/generated/MatchArm/MatchArm.ql linguist-generated
|
||||
|
||||
2
rust/ql/lib/codeql/rust/elements.qll
generated
2
rust/ql/lib/codeql/rust/elements.qll
generated
@@ -72,8 +72,10 @@ import codeql.rust.elements.LoopExpr
|
||||
import codeql.rust.elements.MacroCall
|
||||
import codeql.rust.elements.MacroDef
|
||||
import codeql.rust.elements.MacroExpr
|
||||
import codeql.rust.elements.MacroItems
|
||||
import codeql.rust.elements.MacroPat
|
||||
import codeql.rust.elements.MacroRules
|
||||
import codeql.rust.elements.MacroStmts
|
||||
import codeql.rust.elements.MacroType
|
||||
import codeql.rust.elements.MatchArm
|
||||
import codeql.rust.elements.MatchArmList
|
||||
|
||||
10
rust/ql/lib/codeql/rust/elements/MacroItems.qll
generated
Normal file
10
rust/ql/lib/codeql/rust/elements/MacroItems.qll
generated
Normal file
@@ -0,0 +1,10 @@
|
||||
// generated by codegen, do not edit
|
||||
/**
|
||||
* This module provides the public class `MacroItems`.
|
||||
*/
|
||||
|
||||
private import internal.MacroItemsImpl
|
||||
import codeql.rust.elements.AstNode
|
||||
import codeql.rust.elements.Item
|
||||
|
||||
final class MacroItems = Impl::MacroItems;
|
||||
11
rust/ql/lib/codeql/rust/elements/MacroStmts.qll
generated
Normal file
11
rust/ql/lib/codeql/rust/elements/MacroStmts.qll
generated
Normal file
@@ -0,0 +1,11 @@
|
||||
// generated by codegen, do not edit
|
||||
/**
|
||||
* This module provides the public class `MacroStmts`.
|
||||
*/
|
||||
|
||||
private import internal.MacroStmtsImpl
|
||||
import codeql.rust.elements.AstNode
|
||||
import codeql.rust.elements.Expr
|
||||
import codeql.rust.elements.Stmt
|
||||
|
||||
final class MacroStmts = Impl::MacroStmts;
|
||||
14
rust/ql/lib/codeql/rust/elements/internal/MacroItemsConstructor.qll
generated
Normal file
14
rust/ql/lib/codeql/rust/elements/internal/MacroItemsConstructor.qll
generated
Normal file
@@ -0,0 +1,14 @@
|
||||
// generated by codegen, remove this comment if you wish to edit this file
|
||||
/**
|
||||
* This module defines the hook used internally to tweak the characteristic predicate of
|
||||
* `MacroItems` synthesized instances.
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
|
||||
private import codeql.rust.elements.internal.generated.Raw
|
||||
|
||||
/**
|
||||
* The characteristic predicate of `MacroItems` synthesized instances.
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
predicate constructMacroItems(Raw::MacroItems id) { any() }
|
||||
16
rust/ql/lib/codeql/rust/elements/internal/MacroItemsImpl.qll
generated
Normal file
16
rust/ql/lib/codeql/rust/elements/internal/MacroItemsImpl.qll
generated
Normal file
@@ -0,0 +1,16 @@
|
||||
// generated by codegen, remove this comment if you wish to edit this file
|
||||
/**
|
||||
* This module provides a hand-modifiable wrapper around the generated class `MacroItems`.
|
||||
*
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
|
||||
private import codeql.rust.elements.internal.generated.MacroItems
|
||||
|
||||
/**
|
||||
* INTERNAL: This module contains the customizable definition of `MacroItems` and should not
|
||||
* be referenced directly.
|
||||
*/
|
||||
module Impl {
|
||||
class MacroItems extends Generated::MacroItems { }
|
||||
}
|
||||
14
rust/ql/lib/codeql/rust/elements/internal/MacroStmtsConstructor.qll
generated
Normal file
14
rust/ql/lib/codeql/rust/elements/internal/MacroStmtsConstructor.qll
generated
Normal file
@@ -0,0 +1,14 @@
|
||||
// generated by codegen, remove this comment if you wish to edit this file
|
||||
/**
|
||||
* This module defines the hook used internally to tweak the characteristic predicate of
|
||||
* `MacroStmts` synthesized instances.
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
|
||||
private import codeql.rust.elements.internal.generated.Raw
|
||||
|
||||
/**
|
||||
* The characteristic predicate of `MacroStmts` synthesized instances.
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
predicate constructMacroStmts(Raw::MacroStmts id) { any() }
|
||||
16
rust/ql/lib/codeql/rust/elements/internal/MacroStmtsImpl.qll
generated
Normal file
16
rust/ql/lib/codeql/rust/elements/internal/MacroStmtsImpl.qll
generated
Normal file
@@ -0,0 +1,16 @@
|
||||
// generated by codegen, remove this comment if you wish to edit this file
|
||||
/**
|
||||
* This module provides a hand-modifiable wrapper around the generated class `MacroStmts`.
|
||||
*
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
|
||||
private import codeql.rust.elements.internal.generated.MacroStmts
|
||||
|
||||
/**
|
||||
* INTERNAL: This module contains the customizable definition of `MacroStmts` and should not
|
||||
* be referenced directly.
|
||||
*/
|
||||
module Impl {
|
||||
class MacroStmts extends Generated::MacroStmts { }
|
||||
}
|
||||
44
rust/ql/lib/codeql/rust/elements/internal/generated/MacroItems.qll
generated
Normal file
44
rust/ql/lib/codeql/rust/elements/internal/generated/MacroItems.qll
generated
Normal file
@@ -0,0 +1,44 @@
|
||||
// generated by codegen, do not edit
|
||||
/**
|
||||
* This module provides the generated definition of `MacroItems`.
|
||||
* INTERNAL: Do not import directly.
|
||||
*/
|
||||
|
||||
private import codeql.rust.elements.internal.generated.Synth
|
||||
private import codeql.rust.elements.internal.generated.Raw
|
||||
import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl
|
||||
import codeql.rust.elements.Item
|
||||
|
||||
/**
|
||||
* INTERNAL: This module contains the fully generated definition of `MacroItems` and should not
|
||||
* be referenced directly.
|
||||
*/
|
||||
module Generated {
|
||||
/**
|
||||
* INTERNAL: Do not reference the `Generated::MacroItems` class directly.
|
||||
* Use the subclass `MacroItems`, where the following predicates are available.
|
||||
*/
|
||||
class MacroItems extends Synth::TMacroItems, AstNodeImpl::AstNode {
|
||||
override string getAPrimaryQlClass() { result = "MacroItems" }
|
||||
|
||||
/**
|
||||
* Gets the `index`th item of this macro items (0-based).
|
||||
*/
|
||||
Item getItem(int index) {
|
||||
result =
|
||||
Synth::convertItemFromRaw(Synth::convertMacroItemsToRaw(this)
|
||||
.(Raw::MacroItems)
|
||||
.getItem(index))
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets any of the items of this macro items.
|
||||
*/
|
||||
final Item getAnItem() { result = this.getItem(_) }
|
||||
|
||||
/**
|
||||
* Gets the number of items of this macro items.
|
||||
*/
|
||||
final int getNumberOfItems() { result = count(int i | exists(this.getItem(i))) }
|
||||
}
|
||||
}
|
||||
58
rust/ql/lib/codeql/rust/elements/internal/generated/MacroStmts.qll
generated
Normal file
58
rust/ql/lib/codeql/rust/elements/internal/generated/MacroStmts.qll
generated
Normal file
@@ -0,0 +1,58 @@
|
||||
// generated by codegen, do not edit
|
||||
/**
|
||||
* This module provides the generated definition of `MacroStmts`.
|
||||
* INTERNAL: Do not import directly.
|
||||
*/
|
||||
|
||||
private import codeql.rust.elements.internal.generated.Synth
|
||||
private import codeql.rust.elements.internal.generated.Raw
|
||||
import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl
|
||||
import codeql.rust.elements.Expr
|
||||
import codeql.rust.elements.Stmt
|
||||
|
||||
/**
|
||||
* INTERNAL: This module contains the fully generated definition of `MacroStmts` and should not
|
||||
* be referenced directly.
|
||||
*/
|
||||
module Generated {
|
||||
/**
|
||||
* INTERNAL: Do not reference the `Generated::MacroStmts` class directly.
|
||||
* Use the subclass `MacroStmts`, where the following predicates are available.
|
||||
*/
|
||||
class MacroStmts extends Synth::TMacroStmts, AstNodeImpl::AstNode {
|
||||
override string getAPrimaryQlClass() { result = "MacroStmts" }
|
||||
|
||||
/**
|
||||
* Gets the expression of this macro statements, if it exists.
|
||||
*/
|
||||
Expr getExpr() {
|
||||
result =
|
||||
Synth::convertExprFromRaw(Synth::convertMacroStmtsToRaw(this).(Raw::MacroStmts).getExpr())
|
||||
}
|
||||
|
||||
/**
|
||||
* Holds if `getExpr()` exists.
|
||||
*/
|
||||
final predicate hasExpr() { exists(this.getExpr()) }
|
||||
|
||||
/**
|
||||
* Gets the `index`th statement of this macro statements (0-based).
|
||||
*/
|
||||
Stmt getStatement(int index) {
|
||||
result =
|
||||
Synth::convertStmtFromRaw(Synth::convertMacroStmtsToRaw(this)
|
||||
.(Raw::MacroStmts)
|
||||
.getStatement(index))
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets any of the statements of this macro statements.
|
||||
*/
|
||||
final Stmt getAStatement() { result = this.getStatement(_) }
|
||||
|
||||
/**
|
||||
* Gets the number of statements of this macro statements.
|
||||
*/
|
||||
final int getNumberOfStatements() { result = count(int i | exists(this.getStatement(i))) }
|
||||
}
|
||||
}
|
||||
@@ -398,6 +398,43 @@ private module Impl {
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfMacroItems(MacroItems e, int index, string partialPredicateCall) {
|
||||
exists(int b, int bAstNode, int n, int nItem |
|
||||
b = 0 and
|
||||
bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and
|
||||
n = bAstNode and
|
||||
nItem = n + 1 + max(int i | i = -1 or exists(e.getItem(i)) | i) and
|
||||
(
|
||||
none()
|
||||
or
|
||||
result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall)
|
||||
or
|
||||
result = e.getItem(index - n) and
|
||||
partialPredicateCall = "Item(" + (index - n).toString() + ")"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfMacroStmts(MacroStmts e, int index, string partialPredicateCall) {
|
||||
exists(int b, int bAstNode, int n, int nExpr, int nStatement |
|
||||
b = 0 and
|
||||
bAstNode = b + 1 + max(int i | i = -1 or exists(getImmediateChildOfAstNode(e, i, _)) | i) and
|
||||
n = bAstNode and
|
||||
nExpr = n + 1 and
|
||||
nStatement = nExpr + 1 + max(int i | i = -1 or exists(e.getStatement(i)) | i) and
|
||||
(
|
||||
none()
|
||||
or
|
||||
result = getImmediateChildOfAstNode(e, index - b, partialPredicateCall)
|
||||
or
|
||||
index = n and result = e.getExpr() and partialPredicateCall = "Expr()"
|
||||
or
|
||||
result = e.getStatement(index - nExpr) and
|
||||
partialPredicateCall = "Statement(" + (index - nExpr).toString() + ")"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfMatchArm(MatchArm e, int index, string partialPredicateCall) {
|
||||
exists(int b, int bAstNode, int n, int nAttr, int nExpr, int nGuard, int nPat |
|
||||
b = 0 and
|
||||
@@ -3435,6 +3472,10 @@ private module Impl {
|
||||
or
|
||||
result = getImmediateChildOfLifetime(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfMacroItems(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfMacroStmts(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfMatchArm(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfMatchArmList(e, index, partialAccessor)
|
||||
|
||||
@@ -329,6 +329,35 @@ module Raw {
|
||||
string getText() { lifetime_texts(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
class MacroItems extends @macro_items, AstNode {
|
||||
override string toString() { result = "MacroItems" }
|
||||
|
||||
/**
|
||||
* Gets the `index`th item of this macro items (0-based).
|
||||
*/
|
||||
Item getItem(int index) { macro_items_items(this, index, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
class MacroStmts extends @macro_stmts, AstNode {
|
||||
override string toString() { result = "MacroStmts" }
|
||||
|
||||
/**
|
||||
* Gets the expression of this macro statements, if it exists.
|
||||
*/
|
||||
Expr getExpr() { macro_stmts_exprs(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the `index`th statement of this macro statements (0-based).
|
||||
*/
|
||||
Stmt getStatement(int index) { macro_stmts_statements(this, index, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A match arm. For example:
|
||||
|
||||
@@ -250,6 +250,10 @@ module Synth {
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
TMacroExpr(Raw::MacroExpr id) { constructMacroExpr(id) } or
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
TMacroItems(Raw::MacroItems id) { constructMacroItems(id) } or
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
@@ -258,6 +262,10 @@ module Synth {
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
TMacroRules(Raw::MacroRules id) { constructMacroRules(id) } or
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
TMacroStmts(Raw::MacroStmts id) { constructMacroStmts(id) } or
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
@@ -595,13 +603,13 @@ module Synth {
|
||||
TAbi or TArgList or TAssocItem or TAssocItemList or TAttr or TClosureBinder or TExpr or
|
||||
TExternItem or TExternItemList or TFieldList or TFormatArgsArg or TGenericArg or
|
||||
TGenericArgList or TGenericParam or TGenericParamList or TItemList or TLabel or TLetElse or
|
||||
TLifetime or TMatchArm or TMatchArmList or TMatchGuard or TMeta or TName or TNameRef or
|
||||
TParam or TParamList or TPat or TPath or TPathSegment or TRecordExprField or
|
||||
TRecordExprFieldList or TRecordField or TRecordPatField or TRecordPatFieldList or TRename or
|
||||
TRetType or TReturnTypeSyntax or TSelfParam or TSourceFile or TStmt or TStmtList or
|
||||
TToken or TTokenTree or TTupleField or TTypeBound or TTypeBoundList or TTypeRef or
|
||||
TUseTree or TUseTreeList or TVariant or TVariantList or TVisibility or TWhereClause or
|
||||
TWherePred;
|
||||
TLifetime or TMacroItems or TMacroStmts or TMatchArm or TMatchArmList or TMatchGuard or
|
||||
TMeta or TName or TNameRef or TParam or TParamList or TPat or TPath or TPathSegment or
|
||||
TRecordExprField or TRecordExprFieldList or TRecordField or TRecordPatField or
|
||||
TRecordPatFieldList or TRename or TRetType or TReturnTypeSyntax or TSelfParam or
|
||||
TSourceFile or TStmt or TStmtList or TToken or TTokenTree or TTupleField or TTypeBound or
|
||||
TTypeBoundList or TTypeRef or TUseTree or TUseTreeList or TVariant or TVariantList or
|
||||
TVisibility or TWhereClause or TWherePred;
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
@@ -1032,6 +1040,12 @@ module Synth {
|
||||
*/
|
||||
TMacroExpr convertMacroExprFromRaw(Raw::Element e) { result = TMacroExpr(e) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a raw element to a synthesized `TMacroItems`, if possible.
|
||||
*/
|
||||
TMacroItems convertMacroItemsFromRaw(Raw::Element e) { result = TMacroItems(e) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a raw element to a synthesized `TMacroPat`, if possible.
|
||||
@@ -1044,6 +1058,12 @@ module Synth {
|
||||
*/
|
||||
TMacroRules convertMacroRulesFromRaw(Raw::Element e) { result = TMacroRules(e) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a raw element to a synthesized `TMacroStmts`, if possible.
|
||||
*/
|
||||
TMacroStmts convertMacroStmtsFromRaw(Raw::Element e) { result = TMacroStmts(e) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a raw element to a synthesized `TMacroType`, if possible.
|
||||
@@ -1591,6 +1611,10 @@ module Synth {
|
||||
or
|
||||
result = convertLifetimeFromRaw(e)
|
||||
or
|
||||
result = convertMacroItemsFromRaw(e)
|
||||
or
|
||||
result = convertMacroStmtsFromRaw(e)
|
||||
or
|
||||
result = convertMatchArmFromRaw(e)
|
||||
or
|
||||
result = convertMatchArmListFromRaw(e)
|
||||
@@ -2302,6 +2326,12 @@ module Synth {
|
||||
*/
|
||||
Raw::Element convertMacroExprToRaw(TMacroExpr e) { e = TMacroExpr(result) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a synthesized `TMacroItems` to a raw DB element, if possible.
|
||||
*/
|
||||
Raw::Element convertMacroItemsToRaw(TMacroItems e) { e = TMacroItems(result) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a synthesized `TMacroPat` to a raw DB element, if possible.
|
||||
@@ -2314,6 +2344,12 @@ module Synth {
|
||||
*/
|
||||
Raw::Element convertMacroRulesToRaw(TMacroRules e) { e = TMacroRules(result) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a synthesized `TMacroStmts` to a raw DB element, if possible.
|
||||
*/
|
||||
Raw::Element convertMacroStmtsToRaw(TMacroStmts e) { e = TMacroStmts(result) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a synthesized `TMacroType` to a raw DB element, if possible.
|
||||
@@ -2861,6 +2897,10 @@ module Synth {
|
||||
or
|
||||
result = convertLifetimeToRaw(e)
|
||||
or
|
||||
result = convertMacroItemsToRaw(e)
|
||||
or
|
||||
result = convertMacroStmtsToRaw(e)
|
||||
or
|
||||
result = convertMatchArmToRaw(e)
|
||||
or
|
||||
result = convertMatchArmListToRaw(e)
|
||||
|
||||
@@ -62,8 +62,10 @@ import codeql.rust.elements.internal.LoopExprConstructor
|
||||
import codeql.rust.elements.internal.MacroCallConstructor
|
||||
import codeql.rust.elements.internal.MacroDefConstructor
|
||||
import codeql.rust.elements.internal.MacroExprConstructor
|
||||
import codeql.rust.elements.internal.MacroItemsConstructor
|
||||
import codeql.rust.elements.internal.MacroPatConstructor
|
||||
import codeql.rust.elements.internal.MacroRulesConstructor
|
||||
import codeql.rust.elements.internal.MacroStmtsConstructor
|
||||
import codeql.rust.elements.internal.MacroTypeConstructor
|
||||
import codeql.rust.elements.internal.MatchArmConstructor
|
||||
import codeql.rust.elements.internal.MatchArmListConstructor
|
||||
|
||||
@@ -153,6 +153,8 @@ locatable_locations(
|
||||
| @label
|
||||
| @let_else
|
||||
| @lifetime
|
||||
| @macro_items
|
||||
| @macro_stmts
|
||||
| @match_arm
|
||||
| @match_arm_list
|
||||
| @match_guard
|
||||
@@ -433,6 +435,34 @@ lifetime_texts(
|
||||
string text: string ref
|
||||
);
|
||||
|
||||
macro_items(
|
||||
unique int id: @macro_items
|
||||
);
|
||||
|
||||
#keyset[id, index]
|
||||
macro_items_items(
|
||||
int id: @macro_items ref,
|
||||
int index: int ref,
|
||||
int item: @item ref
|
||||
);
|
||||
|
||||
macro_stmts(
|
||||
unique int id: @macro_stmts
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
macro_stmts_exprs(
|
||||
int id: @macro_stmts ref,
|
||||
int expr: @expr ref
|
||||
);
|
||||
|
||||
#keyset[id, index]
|
||||
macro_stmts_statements(
|
||||
int id: @macro_stmts ref,
|
||||
int index: int ref,
|
||||
int statement: @stmt ref
|
||||
);
|
||||
|
||||
match_arms(
|
||||
unique int id: @match_arm
|
||||
);
|
||||
|
||||
4
rust/ql/test/extractor-tests/generated/MacroItems/MISSING_SOURCE.txt
generated
Normal file
4
rust/ql/test/extractor-tests/generated/MacroItems/MISSING_SOURCE.txt
generated
Normal file
@@ -0,0 +1,4 @@
|
||||
// generated by codegen, do not edit
|
||||
|
||||
After a source file is added in this directory and codegen is run again, test queries
|
||||
will appear and this file will be deleted
|
||||
4
rust/ql/test/extractor-tests/generated/MacroStmts/MISSING_SOURCE.txt
generated
Normal file
4
rust/ql/test/extractor-tests/generated/MacroStmts/MISSING_SOURCE.txt
generated
Normal file
@@ -0,0 +1,4 @@
|
||||
// generated by codegen, do not edit
|
||||
|
||||
After a source file is added in this directory and codegen is run again, test queries
|
||||
will appear and this file will be deleted
|
||||
Reference in New Issue
Block a user