mirror of
https://github.com/github/codeql.git
synced 2025-12-16 16:53:25 +01:00
Rust: run codegen again
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 0fc473b83d7cd550396b5c147829487fa7264121b6823fd371b78f55e48935b0 0fc473b83d7cd550396b5c147829487fa7264121b6823fd371b78f55e48935b0
|
||||
top.rs a2b836f6f4c1332cdc2bcf7a4201765f22635f976892725aa424d7b306b6b586 a2b836f6f4c1332cdc2bcf7a4201765f22635f976892725aa424d7b306b6b586
|
||||
|
||||
122
rust/extractor/src/generated/top.rs
generated
122
rust/extractor/src/generated/top.rs
generated
@@ -835,56 +835,6 @@ impl From<trap::Label<Callable>> for trap::Label<Element> {
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct ClosureBinder {
|
||||
pub id: trap::TrapId<ClosureBinder>,
|
||||
pub generic_param_list: Option<trap::Label<GenericParamList>>,
|
||||
}
|
||||
|
||||
impl trap::TrapEntry for ClosureBinder {
|
||||
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("closure_binders", vec![id.into()]);
|
||||
if let Some(v) = self.generic_param_list {
|
||||
out.add_tuple("closure_binder_generic_param_lists", vec![id.into(), v.into()]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl trap::TrapClass for ClosureBinder {
|
||||
fn class_name() -> &'static str { "ClosureBinder" }
|
||||
}
|
||||
|
||||
impl From<trap::Label<ClosureBinder>> for trap::Label<AstNode> {
|
||||
fn from(value: trap::Label<ClosureBinder>) -> Self {
|
||||
// SAFETY: this is safe because in the dbscheme ClosureBinder is a subclass of AstNode
|
||||
unsafe {
|
||||
Self::from_untyped(value.as_untyped())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<trap::Label<ClosureBinder>> for trap::Label<Locatable> {
|
||||
fn from(value: trap::Label<ClosureBinder>) -> Self {
|
||||
// SAFETY: this is safe because in the dbscheme ClosureBinder is a subclass of Locatable
|
||||
unsafe {
|
||||
Self::from_untyped(value.as_untyped())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<trap::Label<ClosureBinder>> for trap::Label<Element> {
|
||||
fn from(value: trap::Label<ClosureBinder>) -> Self {
|
||||
// SAFETY: this is safe because in the dbscheme ClosureBinder is a subclass of Element
|
||||
unsafe {
|
||||
Self::from_untyped(value.as_untyped())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct Expr {
|
||||
_unused: ()
|
||||
@@ -1011,6 +961,56 @@ impl From<trap::Label<FieldList>> for trap::Label<Element> {
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct ForBinder {
|
||||
pub id: trap::TrapId<ForBinder>,
|
||||
pub generic_param_list: Option<trap::Label<GenericParamList>>,
|
||||
}
|
||||
|
||||
impl trap::TrapEntry for ForBinder {
|
||||
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("for_binders", vec![id.into()]);
|
||||
if let Some(v) = self.generic_param_list {
|
||||
out.add_tuple("for_binder_generic_param_lists", vec![id.into(), v.into()]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl trap::TrapClass for ForBinder {
|
||||
fn class_name() -> &'static str { "ForBinder" }
|
||||
}
|
||||
|
||||
impl From<trap::Label<ForBinder>> for trap::Label<AstNode> {
|
||||
fn from(value: trap::Label<ForBinder>) -> Self {
|
||||
// SAFETY: this is safe because in the dbscheme ForBinder is a subclass of AstNode
|
||||
unsafe {
|
||||
Self::from_untyped(value.as_untyped())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<trap::Label<ForBinder>> for trap::Label<Locatable> {
|
||||
fn from(value: trap::Label<ForBinder>) -> Self {
|
||||
// SAFETY: this is safe because in the dbscheme ForBinder is a subclass of Locatable
|
||||
unsafe {
|
||||
Self::from_untyped(value.as_untyped())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<trap::Label<ForBinder>> for trap::Label<Element> {
|
||||
fn from(value: trap::Label<ForBinder>) -> Self {
|
||||
// SAFETY: this is safe because in the dbscheme ForBinder is a subclass of Element
|
||||
unsafe {
|
||||
Self::from_untyped(value.as_untyped())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct FormatArgsArg {
|
||||
pub id: trap::TrapId<FormatArgsArg>,
|
||||
@@ -2808,6 +2808,7 @@ impl From<trap::Label<TupleField>> for trap::Label<Element> {
|
||||
#[derive(Debug)]
|
||||
pub struct TypeBound {
|
||||
pub id: trap::TrapId<TypeBound>,
|
||||
pub for_binder: Option<trap::Label<ForBinder>>,
|
||||
pub is_async: bool,
|
||||
pub is_const: bool,
|
||||
pub lifetime: Option<trap::Label<Lifetime>>,
|
||||
@@ -2822,6 +2823,9 @@ impl trap::TrapEntry for TypeBound {
|
||||
|
||||
fn emit(self, id: trap::Label<Self>, out: &mut trap::Writer) {
|
||||
out.add_tuple("type_bounds", vec![id.into()]);
|
||||
if let Some(v) = self.for_binder {
|
||||
out.add_tuple("type_bound_for_binders", vec![id.into(), v.into()]);
|
||||
}
|
||||
if self.is_async {
|
||||
out.add_tuple("type_bound_is_async", vec![id.into()]);
|
||||
}
|
||||
@@ -3308,7 +3312,7 @@ impl From<trap::Label<WhereClause>> for trap::Label<Element> {
|
||||
#[derive(Debug)]
|
||||
pub struct WherePred {
|
||||
pub id: trap::TrapId<WherePred>,
|
||||
pub generic_param_list: Option<trap::Label<GenericParamList>>,
|
||||
pub for_binder: Option<trap::Label<ForBinder>>,
|
||||
pub lifetime: Option<trap::Label<Lifetime>>,
|
||||
pub type_repr: Option<trap::Label<TypeRepr>>,
|
||||
pub type_bound_list: Option<trap::Label<TypeBoundList>>,
|
||||
@@ -3321,8 +3325,8 @@ impl trap::TrapEntry for WherePred {
|
||||
|
||||
fn emit(self, id: trap::Label<Self>, out: &mut trap::Writer) {
|
||||
out.add_tuple("where_preds", vec![id.into()]);
|
||||
if let Some(v) = self.generic_param_list {
|
||||
out.add_tuple("where_pred_generic_param_lists", vec![id.into(), v.into()]);
|
||||
if let Some(v) = self.for_binder {
|
||||
out.add_tuple("where_pred_for_binders", vec![id.into(), v.into()]);
|
||||
}
|
||||
if let Some(v) = self.lifetime {
|
||||
out.add_tuple("where_pred_lifetimes", vec![id.into(), v.into()]);
|
||||
@@ -4450,7 +4454,7 @@ pub struct ClosureExpr {
|
||||
pub param_list: Option<trap::Label<ParamList>>,
|
||||
pub attrs: Vec<trap::Label<Attr>>,
|
||||
pub body: Option<trap::Label<Expr>>,
|
||||
pub closure_binder: Option<trap::Label<ClosureBinder>>,
|
||||
pub for_binder: Option<trap::Label<ForBinder>>,
|
||||
pub is_async: bool,
|
||||
pub is_const: bool,
|
||||
pub is_gen: bool,
|
||||
@@ -4475,8 +4479,8 @@ impl trap::TrapEntry for ClosureExpr {
|
||||
if let Some(v) = self.body {
|
||||
out.add_tuple("closure_expr_bodies", vec![id.into(), v.into()]);
|
||||
}
|
||||
if let Some(v) = self.closure_binder {
|
||||
out.add_tuple("closure_expr_closure_binders", vec![id.into(), v.into()]);
|
||||
if let Some(v) = self.for_binder {
|
||||
out.add_tuple("closure_expr_for_binders", vec![id.into(), v.into()]);
|
||||
}
|
||||
if self.is_async {
|
||||
out.add_tuple("closure_expr_is_async", vec![id.into()]);
|
||||
@@ -5132,7 +5136,7 @@ impl From<trap::Label<FnPtrTypeRepr>> for trap::Label<Element> {
|
||||
#[derive(Debug)]
|
||||
pub struct ForTypeRepr {
|
||||
pub id: trap::TrapId<ForTypeRepr>,
|
||||
pub generic_param_list: Option<trap::Label<GenericParamList>>,
|
||||
pub for_binder: Option<trap::Label<ForBinder>>,
|
||||
pub type_repr: Option<trap::Label<TypeRepr>>,
|
||||
}
|
||||
|
||||
@@ -5143,8 +5147,8 @@ impl trap::TrapEntry for ForTypeRepr {
|
||||
|
||||
fn emit(self, id: trap::Label<Self>, out: &mut trap::Writer) {
|
||||
out.add_tuple("for_type_reprs", vec![id.into()]);
|
||||
if let Some(v) = self.generic_param_list {
|
||||
out.add_tuple("for_type_repr_generic_param_lists", vec![id.into(), v.into()]);
|
||||
if let Some(v) = self.for_binder {
|
||||
out.add_tuple("for_type_repr_for_binders", vec![id.into(), v.into()]);
|
||||
}
|
||||
if let Some(v) = self.type_repr {
|
||||
out.add_tuple("for_type_repr_type_reprs", vec![id.into(), v.into()]);
|
||||
|
||||
50
rust/extractor/src/translate/generated.rs
generated
50
rust/extractor/src/translate/generated.rs
generated
@@ -688,21 +688,6 @@ impl Translator<'_> {
|
||||
self.emit_tokens(node, label.into(), node.syntax().children_with_tokens());
|
||||
Some(label)
|
||||
}
|
||||
pub(crate) fn emit_closure_binder(
|
||||
&mut self,
|
||||
node: &ast::ClosureBinder,
|
||||
) -> Option<Label<generated::ClosureBinder>> {
|
||||
let generic_param_list = node
|
||||
.generic_param_list()
|
||||
.and_then(|x| self.emit_generic_param_list(&x));
|
||||
let label = self.trap.emit(generated::ClosureBinder {
|
||||
id: TrapId::Star,
|
||||
generic_param_list,
|
||||
});
|
||||
self.emit_location(label, node);
|
||||
self.emit_tokens(node, label.into(), node.syntax().children_with_tokens());
|
||||
Some(label)
|
||||
}
|
||||
pub(crate) fn emit_closure_expr(
|
||||
&mut self,
|
||||
node: &ast::ClosureExpr,
|
||||
@@ -712,9 +697,7 @@ impl Translator<'_> {
|
||||
}
|
||||
let attrs = node.attrs().filter_map(|x| self.emit_attr(&x)).collect();
|
||||
let body = node.body().and_then(|x| self.emit_expr(&x));
|
||||
let closure_binder = node
|
||||
.closure_binder()
|
||||
.and_then(|x| self.emit_closure_binder(&x));
|
||||
let for_binder = node.for_binder().and_then(|x| self.emit_for_binder(&x));
|
||||
let is_async = node.async_token().is_some();
|
||||
let is_const = node.const_token().is_some();
|
||||
let is_gen = node.gen_token().is_some();
|
||||
@@ -726,7 +709,7 @@ impl Translator<'_> {
|
||||
id: TrapId::Star,
|
||||
attrs,
|
||||
body,
|
||||
closure_binder,
|
||||
for_binder,
|
||||
is_async,
|
||||
is_const,
|
||||
is_gen,
|
||||
@@ -1064,6 +1047,21 @@ impl Translator<'_> {
|
||||
self.emit_tokens(node, label.into(), node.syntax().children_with_tokens());
|
||||
Some(label)
|
||||
}
|
||||
pub(crate) fn emit_for_binder(
|
||||
&mut self,
|
||||
node: &ast::ForBinder,
|
||||
) -> Option<Label<generated::ForBinder>> {
|
||||
let generic_param_list = node
|
||||
.generic_param_list()
|
||||
.and_then(|x| self.emit_generic_param_list(&x));
|
||||
let label = self.trap.emit(generated::ForBinder {
|
||||
id: TrapId::Star,
|
||||
generic_param_list,
|
||||
});
|
||||
self.emit_location(label, node);
|
||||
self.emit_tokens(node, label.into(), node.syntax().children_with_tokens());
|
||||
Some(label)
|
||||
}
|
||||
pub(crate) fn emit_for_expr(
|
||||
&mut self,
|
||||
node: &ast::ForExpr,
|
||||
@@ -1092,13 +1090,11 @@ impl Translator<'_> {
|
||||
&mut self,
|
||||
node: &ast::ForType,
|
||||
) -> Option<Label<generated::ForTypeRepr>> {
|
||||
let generic_param_list = node
|
||||
.generic_param_list()
|
||||
.and_then(|x| self.emit_generic_param_list(&x));
|
||||
let for_binder = node.for_binder().and_then(|x| self.emit_for_binder(&x));
|
||||
let type_repr = node.ty().and_then(|x| self.emit_type(&x));
|
||||
let label = self.trap.emit(generated::ForTypeRepr {
|
||||
id: TrapId::Star,
|
||||
generic_param_list,
|
||||
for_binder,
|
||||
type_repr,
|
||||
});
|
||||
self.emit_location(label, node);
|
||||
@@ -2805,6 +2801,7 @@ impl Translator<'_> {
|
||||
&mut self,
|
||||
node: &ast::TypeBound,
|
||||
) -> Option<Label<generated::TypeBound>> {
|
||||
let for_binder = node.for_binder().and_then(|x| self.emit_for_binder(&x));
|
||||
let is_async = node.async_token().is_some();
|
||||
let is_const = node.const_token().is_some();
|
||||
let lifetime = node.lifetime().and_then(|x| self.emit_lifetime(&x));
|
||||
@@ -2814,6 +2811,7 @@ impl Translator<'_> {
|
||||
.and_then(|x| self.emit_use_bound_generic_args(&x));
|
||||
let label = self.trap.emit(generated::TypeBound {
|
||||
id: TrapId::Star,
|
||||
for_binder,
|
||||
is_async,
|
||||
is_const,
|
||||
lifetime,
|
||||
@@ -3058,9 +3056,7 @@ impl Translator<'_> {
|
||||
&mut self,
|
||||
node: &ast::WherePred,
|
||||
) -> Option<Label<generated::WherePred>> {
|
||||
let generic_param_list = node
|
||||
.generic_param_list()
|
||||
.and_then(|x| self.emit_generic_param_list(&x));
|
||||
let for_binder = node.for_binder().and_then(|x| self.emit_for_binder(&x));
|
||||
let lifetime = node.lifetime().and_then(|x| self.emit_lifetime(&x));
|
||||
let type_repr = node.ty().and_then(|x| self.emit_type(&x));
|
||||
let type_bound_list = node
|
||||
@@ -3068,7 +3064,7 @@ impl Translator<'_> {
|
||||
.and_then(|x| self.emit_type_bound_list(&x));
|
||||
let label = self.trap.emit(generated::WherePred {
|
||||
id: TrapId::Star,
|
||||
generic_param_list,
|
||||
for_binder,
|
||||
lifetime,
|
||||
type_repr,
|
||||
type_bound_list,
|
||||
|
||||
44
rust/ql/.generated.list
generated
44
rust/ql/.generated.list
generated
@@ -36,8 +36,7 @@ lib/codeql/rust/elements/CallExpr.qll f336500ca7a611b164d48b90e80edb0c0d3816792b
|
||||
lib/codeql/rust/elements/CallExprBase.qll 2846202b5208b541977500286951d96487bf555838c6c16cdd006a71e383745a c789d412bf099c624329379e0c7d94fa0d23ae2edea7a25a2ea0f3c0042ccf62
|
||||
lib/codeql/rust/elements/Callable.qll 0f7f78c3bfabbe24962f6232b0440d27e51f06d2b8d341fc623ffbfbff173f47 5fd13aaa0eaf76ea0b47fa0641bd23eea20a069f0b3cbc1ee4e290e88321008a
|
||||
lib/codeql/rust/elements/CastExpr.qll 2fe1f36ba31fa29de309baf0a665cfcae67b61c73345e8f9bbd41e8c235fec45 c5b4c1e9dc24eb2357799defcb2df25989075e3a80e8663b74204a1c1b70e29a
|
||||
lib/codeql/rust/elements/ClosureBinder.qll 02c8e83bf07deaf7bf0233b76623ec7f1837be8b77fe7e1c23544edc7d85e3c4 2b114d9a6dede694324aebe3dac80a802d139cfacd39beb0f12b5b0a46ee6390
|
||||
lib/codeql/rust/elements/ClosureExpr.qll 67e2a106e9154c90367b129987e574d2a9ecf5b297536627e43706675d35eaed d6a381132ddd589c5a7ce174f50f9620041ddf690e15a65ebfb05ff7e7c02de7
|
||||
lib/codeql/rust/elements/ClosureExpr.qll d122c769abc6c832dd1ad1b55d00aabc2f9029dd786f30905ac019e9e18517c0 56288c841c5e88cb603acb0d078ddeab8166f435b9545598293c0a59e9e84457
|
||||
lib/codeql/rust/elements/Comment.qll fedad50575125e9a64a8a8776a8c1dbf1e76df990f01849d9f0955f9d74cb2a6 8eb1afad1e1007a4f0090fdac65d81726b23eda6517d067fd0185f70f17635ab
|
||||
lib/codeql/rust/elements/Const.qll 5f4d11e01162a06127ba56519efd66d1ecfb5de7c1792fc1c283a56cf2127373 8c618ac774267d25db70cc05a080f8a408dc23ab7e88c0fc543eda8b4d4cb995
|
||||
lib/codeql/rust/elements/ConstArg.qll 01865b3be4790c627a062c59ea608462931abcb2f94a132cf265318664fd1251 a2c6bbf63dbfa999e511b6941143a51c9392477d8ccd25e081f85475936ff558
|
||||
@@ -57,8 +56,9 @@ lib/codeql/rust/elements/ExternItemList.qll eceb0fcd3a6f9d87fa044da1da112ce96b75
|
||||
lib/codeql/rust/elements/FieldExpr.qll 8102cd659f9059cf6af2a22033cfcd2aae9c35204b86f7d219a05f1f8de54b3b f818169dddf5102095ae1410583615f80031376a08b5307d0c464e79953c3975
|
||||
lib/codeql/rust/elements/FieldList.qll 72f3eace2f0c0600b1ad059819ae756f1feccd15562e0449a3f039a680365462 50e4c01df7b801613688b06bb47ccc36e6c8c7fa2e50cc62cb4705c9abf5ee31
|
||||
lib/codeql/rust/elements/FnPtrTypeRepr.qll d4586ac5ee2382b5ef9daafa77c7b3c1b7564647aa20d1efb1626299cde87ba9 48d9b63725c9cd89d79f9806fa5d5f22d7815e70bbd78d8da40a2359ac53fef5
|
||||
lib/codeql/rust/elements/ForBinder.qll ee29b55cb4c1fa5180cc4ee1236ac089fe9f67ffa9e5a1474003b717f1ac6e0f 5b811c8cf9550cb675034315e03c5cbbfa7544ad3a696988e04d780037d434bf
|
||||
lib/codeql/rust/elements/ForExpr.qll a050f60cf6fcc3ce66f5042be1b8096e5207fe2674d7477f9e299091ca99a4bd d7198495139649778894e930163add2d16b5588dd12bd6e094a9aec6863cb16f
|
||||
lib/codeql/rust/elements/ForTypeRepr.qll b3ba3a7f74f092397f7986542e59020bd7ea63eb8abc154d0f66f1415e1eaf6e a04750567cf85e11698a6b93674a651245537d08bf8aabf303a3626e190a4977
|
||||
lib/codeql/rust/elements/ForTypeRepr.qll 0315e6850eb09d9debdd6843e4ce0cfa15a4b9502f1b81dbaafcd263efc62511 e0e612a9686502f3ff48321fea28be6f0720dfd22aad929b446b573ae70297d4
|
||||
lib/codeql/rust/elements/Format.qll 1b186730710e7e29ea47594998f0b359ad308927f84841adae0c0cb35fc8aeda d6f7bfdda60a529fb9e9a1975628d5bd11aa28a45e295c7526692ac662fd19f8
|
||||
lib/codeql/rust/elements/FormatArgsArg.qll a2c23cd512d44dd60b7d65eba52cc3adf6e2fbbcd0588be375daa16002cd7741 d9c5fe183fb228375223d83f857b7a9ee686f1d3e341bcf323d7c6f39652f88b
|
||||
lib/codeql/rust/elements/FormatArgsExpr.qll 8127cbe4082f7acc3d8a05298c2c9bea302519b8a6cd2d158a83c516d18fc487 88cf9b3bedd69a1150968f9a465c904bbb6805da0e0b90cfd1fc0dab1f6d9319
|
||||
@@ -168,7 +168,7 @@ lib/codeql/rust/elements/TupleStructPat.qll da398a23eb616bf7dd586b2a87f4ab00f286
|
||||
lib/codeql/rust/elements/TupleTypeRepr.qll 1ac5abf6281ea31680a4098407fbe55459d08f92a50dec20d1f8b93d498eee41 6d9625cce4e4abf6b6e6c22e47880fbd23740d07b621137bd7fa0a2ee13badd9
|
||||
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/TypeBound.qll d5b2a904e497ba1899fb9e19547a6dfa7716c8aabe1e6e19070cbb58af32321b eabb16616afe3e88a25db4519174828a7ead1eb69ec7f98ef4abf4b3ead1c220
|
||||
lib/codeql/rust/elements/TypeBoundList.qll 61a861e89b3de23801c723531cd3331a61214817a230aaae74d91cb60f0e096f d54e3d830bb550c5ba082ccd09bc0dc4e6e44e8d11066a7afba5a7172aa687a8
|
||||
lib/codeql/rust/elements/TypeParam.qll 0787c1cc0c121e5b46f7d8e25153fd1b181bd3432eb040cf3b4ae3ed9ac2f28c 50092950f52a4e3bfd961dff4ffd8a719ef66ca1a0914bd33e26fed538321999
|
||||
lib/codeql/rust/elements/TypeRepr.qll ea41b05ef0aaac71da460f9a6a8331cf98166f2c388526068ddacbd67488c892 11a01e42dab9183bac14de1ca49131788ede99e75b0ef759efcbc7cf08524184
|
||||
@@ -185,7 +185,7 @@ lib/codeql/rust/elements/Variant.qll 7895461fa728f6c3a7293799c5e6b965b413b679566
|
||||
lib/codeql/rust/elements/VariantList.qll 39803fbb873d48202c2a511c00c8eafede06e519894e0fd050c2a85bf5f4aa73 1735f89b2b8f6d5960a276b87ea10e4bb8c848c24a5d5fad7f3add7a4d94b7da
|
||||
lib/codeql/rust/elements/Visibility.qll aa69e8a3fd3b01f6fea0ae2d841a2adc51f4e46dcfc9f8f03c34fbe96f7e24e7 0d475e97e07b73c8da2b53555085b8309d8dc69c113bcb396fc901361dbfe6b8
|
||||
lib/codeql/rust/elements/WhereClause.qll 4e28e11ceec835a093e469854a4b615e698309cdcbc39ed83810e2e4e7c5953f 4736baf689b87dd6669cb0ef9e27eb2c0f2776ce7f29d7693670bbcea06eb4e4
|
||||
lib/codeql/rust/elements/WherePred.qll 490395b468c87d5c623f6741dc28512ee371cbf479ea77aee7e61b20544f5732 782f74b101d374a71908069be3db23755ab1473ffe879b368be73a5fdc6eac3a
|
||||
lib/codeql/rust/elements/WherePred.qll 35ef2580d20ffa6fadb05ea38152b5e4953b4dc827326e96969cd86d2dfdbfdc 6b8f7abf81bfeff7a16539f6a18746e02daedad42145b1c5a0b8cfa33676cbf8
|
||||
lib/codeql/rust/elements/WhileExpr.qll 4a37e3ecd37c306a9b93b610a0e45e18adc22fcd4ce955a519b679e9f89b97e8 82026faa73b94390544e61ed2f3aaeaabd3e457439bb76d2fb06b0d1edd63f49
|
||||
lib/codeql/rust/elements/WildcardPat.qll 4f941afc5f9f8d319719312399a8f787c75a0dbb709ec7cf488f019339635aab a9140a86da752f9126e586ddb9424b23b3fb4841a5420bac48108c38bb218930
|
||||
lib/codeql/rust/elements/YeetExpr.qll 4172bf70de31cab17639da6eed4a12a7afcefd7aa9182216c3811c822d3d6b17 88223aab1bef696f508e0605615d6b83e1eaef755314e6a651ae977edd3757c3
|
||||
@@ -241,8 +241,6 @@ lib/codeql/rust/elements/internal/BoxPatConstructor.qll 153f110ba25fd6c889092bfd
|
||||
lib/codeql/rust/elements/internal/BreakExprConstructor.qll 356be043c28e0b34fdf925a119c945632ee883c6f5ebb9a27003c6a8d250afd9 bb77e66b04bb9489340e7506931559b94285c6904b6f9d2f83b214cba4f3cfd5
|
||||
lib/codeql/rust/elements/internal/CallExprConstructor.qll 742b38e862e2cf82fd1ecc4d4fc5b4782a9c7c07f031452b2bae7aa59d5aa13a cad6e0a8be21d91b20ac2ec16cab9c30eae810b452c0f1992ed87d5c7f4144dc
|
||||
lib/codeql/rust/elements/internal/CastExprConstructor.qll f3d6e10c4731f38a384675aeab3fba47d17b9e15648293787092bb3247ed808d d738a7751dbadb70aa1dcffcf8af7fa61d4cf8029798369a7e8620013afff4ed
|
||||
lib/codeql/rust/elements/internal/ClosureBinderConstructor.qll 6e376ab9d40308e95bcdaf1cc892472c92099d477720192cd382d2c4e0d9c8a1 60a0efe50203ad5bb97bdfc06d602182edcc48ac9670f2d27a9675bd9fd8e19f
|
||||
lib/codeql/rust/elements/internal/ClosureBinderImpl.qll 9f6ce7068b5c17df44f00037ebb42e6c8fdbbbd09bf89951221fb04f378fbdf1 6e6e372e151fe0b0f17a5ea0ed774553b6ed0bf53e1d377e5ed24a0f98529735
|
||||
lib/codeql/rust/elements/internal/ClosureExprConstructor.qll a348229d2b25c7ebd43b58461830b7915e92d31ae83436ec831e0c4873f6218a 70a1d2ac33db3ac4da5826b0e8628f2f29a8f9cdfd8e4fd0e488d90ce0031a38
|
||||
lib/codeql/rust/elements/internal/CommentConstructor.qll 0b4a6a976d667bf7595500dfb91b9cfc87460a501837ba5382d9a8d8321d7736 7d02d8c94a319dc48e7978d5270e33fc5c308d443768ff96b618236d250123f1
|
||||
lib/codeql/rust/elements/internal/ConstArgConstructor.qll f63021dc1ca2276786da3a981d06c18d7a360b5e75c08bca5d1afece4f7c4a83 487a870cbf5ed6554d671a8e159edd9261d853eba2d28ce2bd459759f47f11f2
|
||||
@@ -273,6 +271,8 @@ lib/codeql/rust/elements/internal/FieldExprConstructor.qll b3be2c4ccaf2c8a1283f3
|
||||
lib/codeql/rust/elements/internal/FieldListImpl.qll 6b80b573989ee85389c4485729a40c92c7e0a5b8a96a4385e812c74fb63c894f d333bcb043616b95ffefed4d216f94e5b07541f8153e4fb8084f4e793947b023
|
||||
lib/codeql/rust/elements/internal/FnPtrTypeReprConstructor.qll 61d8808ea027a6e04d5304c880974332a0195451f6b4474f84b3695ec907d865 0916c63a02b01a839fe23ec8b189d37dc1b8bc4e1ba753cbf6d6f5067a46965a
|
||||
lib/codeql/rust/elements/internal/FnPtrTypeReprImpl.qll 6b66f9bda1b5deba50a02b6ac7deb8e922da04cf19d6ed9834141bc97074bf14 b0a07d7b9204256a85188fda2deaf14e18d24e8a881727fd6e5b571bf9debdc8
|
||||
lib/codeql/rust/elements/internal/ForBinderConstructor.qll 98f16b0106a19210713404f4be8b1b9f70c88efb0b88bdf2f9ea9c8fbd129842 a7af9e75f11d824a60c367924542a31a0f46f7b1f88d3ee330d4dd26b2f29df5
|
||||
lib/codeql/rust/elements/internal/ForBinderImpl.qll 62e957e4e8a68816defed494e706a37a83ad30a455ded913b48c2c3d9c51d728 e38e1b93963513704efebec2c63e5f9a9eae372fe88e1dc8c480885e21528121
|
||||
lib/codeql/rust/elements/internal/ForExprConstructor.qll d79b88dac19256300b758ba0f37ce3f07e9f848d6ae0c1fdb87bd348e760aa3e 62123b11858293429aa609ea77d2f45cb8c8eebae80a1d81da6f3ad7d1dbc19b
|
||||
lib/codeql/rust/elements/internal/ForTypeReprConstructor.qll eae141dbe9256ab0eb812a926ebf226075d150f6506dfecb56c85eb169cdc76b 721c2272193a6f9504fb780d40e316a93247ebfb1f302bb0a0222af689300245
|
||||
lib/codeql/rust/elements/internal/ForTypeReprImpl.qll 75747779312b3f3ffdd02188053ba3f46b8922f02630711902f7a27eecced31a 71a900f014758d1473ef198c71892d42e20dd96e934d4bedb74581964c4d1503
|
||||
@@ -492,8 +492,7 @@ lib/codeql/rust/elements/internal/generated/CallExpr.qll f1b8dae487077cc9d1dccf8
|
||||
lib/codeql/rust/elements/internal/generated/CallExprBase.qll 2268e01d65015014c05166161bb28e5a1e78164d525ca16fc1e3106866cf231d b2f9b912153ba4d3e3612df4f74ac0e83077c31d5b31383bd277974081417a56
|
||||
lib/codeql/rust/elements/internal/generated/Callable.qll 9a8661aa018fd90a21529760c1dbc46c1ad3649e17b030e59ced0683fbf83f8a 8b573adfc23ec0ac91949da415e6a0c988fa02cbce9534d45ac98a5512d7b1ca
|
||||
lib/codeql/rust/elements/internal/generated/CastExpr.qll ddc20054b0b339ad4d40298f3461490d25d00af87c876da5ffbc6a11c0832295 f4247307afcd74d80e926f29f8c57e78c50800984483e6b6003a44681e4a71f3
|
||||
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/ClosureExpr.qll d5deef5d257b313e3fa3ad292c8af26db32f45446dc88009515435344aed1efc eb8d0394255e7dc005ef5c729ae851b78b4a0d838c3ac2460b4e715bbdb5e97f
|
||||
lib/codeql/rust/elements/internal/generated/Comment.qll cd1ef861e3803618f9f78a4ac00516d50ecfecdca1c1d14304dc5327cbe07a3b 8b67345aeb15beb5895212228761ea3496297846c93fd2127b417406ae87c201
|
||||
lib/codeql/rust/elements/internal/generated/Const.qll 3e606f0198b6461a94964dba7a4d386408f01651d75378eeab251dfceccf49c8 20fe276cded4764bdb1cd50de956bea88d7cd731909c0b84b4abb972b3094959
|
||||
lib/codeql/rust/elements/internal/generated/ConstArg.qll c52bf746f2dc89b8d71b8419736707bfcbb09cca424c3ba76e888e2add415bf6 89309a9df4fde23cfd3d8492908ccec4d90cc8457d35c507ef81371a369941b4
|
||||
@@ -514,8 +513,9 @@ lib/codeql/rust/elements/internal/generated/ExtractorStep.qll 61cd504a1aab98b1c9
|
||||
lib/codeql/rust/elements/internal/generated/FieldExpr.qll d6077fcc563702bb8d626d2fda60df171023636f98b4a345345e131da1a03dfc 03f9eb65abfab778e6d2c7090c08fe75c38c967302f5a9fa96ab0c24e954929d
|
||||
lib/codeql/rust/elements/internal/generated/FieldList.qll 35bb72a673c02afafc1f6128aeb26853d3a1cdbaea246332affa17a023ece70e b7012dd214788de9248e9ab6eea1a896329d5731fa0b39e23df1b39df2b7eb9c
|
||||
lib/codeql/rust/elements/internal/generated/FnPtrTypeRepr.qll f218fa57a01ecc39b58fa15893d6499c15ff8ab8fd9f4ed3078f0ca8b3f15c7e 2d1a7325cf2bd0174ce6fc15e0cbe39c7c1d8b40db5f91e5329acb339a1ad1e8
|
||||
lib/codeql/rust/elements/internal/generated/ForBinder.qll 7be6b8e3934db8cd4ac326625cf637dda4b175fd7573a52d2feb147769c4c6a1 234484b9b4cf3a20c97334417700db5029da65313410b3c9e929512c509e5c27
|
||||
lib/codeql/rust/elements/internal/generated/ForExpr.qll 7c497d2c612fd175069037d6d7ff9339e8aec63259757bb56269e9ca8b0114ea dc48c0ad3945868d6bd5e41ca34a41f8ee74d8ba0adc62b440256f59c7f21096
|
||||
lib/codeql/rust/elements/internal/generated/ForTypeRepr.qll 36ea243bd5ada10c586d9430464761849506b91754cf045c59f4ae194e78a456 cc65dc72c87d0ad7be3263bbdd1c515a057e62e97b0a28f9c4b0f689ac3566b7
|
||||
lib/codeql/rust/elements/internal/generated/ForTypeRepr.qll a8fcdff13e30cce9c30fc3ae81db9ee7160b3028872cb3a60db78523a3ffe771 d3dda40fd2547bd1acd2eeb4d1bc72a4487400bb0752e9679bbb6aea0debf35a
|
||||
lib/codeql/rust/elements/internal/generated/Format.qll 934351f8a8ffd914cc3fd88aca8e81bf646236fe34d15e0df7aeeb0b942b203f da9f146e6f52bafd67dcfd3b916692cf8f66031e0b1d5d17fc8dda5eefb99ca0
|
||||
lib/codeql/rust/elements/internal/generated/FormatArgsArg.qll c762a4af8609472e285dd1b1aec8251421aec49f8d0e5ce9df2cc5e2722326f8 c8c226b94b32447634b445c62bd9af7e11b93a706f8fa35d2de4fda3ce951926
|
||||
lib/codeql/rust/elements/internal/generated/FormatArgsExpr.qll 8aed8715a27d3af3de56ded4610c6792a25216b1544eb7e57c8b0b37c14bd9c1 590a2b0063d2ecd00bbbd1ce29603c8fd69972e34e6daddf309c915ce4ec1375
|
||||
@@ -575,7 +575,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 c7958f4e110f4afb810b06946309bf766305cc4d92c92695ae8f06b3f321ddcd 8150b0550b639cffc7c989c32fc3951fad32ec82ad838f359527a473bdb95a3f
|
||||
lib/codeql/rust/elements/internal/generated/ParentChild.qll 389ee1eea791f9d2a5eb9ae49d2aa61607f8cdb3f3d5752d5c067122029de66a 50875ace3751c001acc11fa596ea1cd8c8b17dd925344c2d91d338b3f864df0d
|
||||
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
|
||||
@@ -590,7 +590,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 7448186873413f4aa7762c990c1c699e3a379280f0260bc76524386aefe567f1 07acbe3eabaa87147757989e8616046fff218669677e7d3d6465fbda639519e1
|
||||
lib/codeql/rust/elements/internal/generated/Raw.qll 3c38cd761b847ba5744810479901692fe1a28759d8305f828ff535c034f21f97 56f75a0589112d66f234c99b0c3798ed928b3a808ebb7d37590cf5868aad9c10
|
||||
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
|
||||
@@ -616,8 +616,8 @@ 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 39bd329c2efef8691106070107356da0c336d10cb395aa2129ceb6108db27357 5369b56fe14c1961b38af4288b512dfaf09fc4264efced468af5fc6da403ac04
|
||||
lib/codeql/rust/elements/internal/generated/SynthConstructors.qll bcc7f617b775ac0c7f04b1cc333ed7cc0bd91f1fabc8baa03c824d1df03f6076 bcc7f617b775ac0c7f04b1cc333ed7cc0bd91f1fabc8baa03c824d1df03f6076
|
||||
lib/codeql/rust/elements/internal/generated/Synth.qll e1f47da257976aa7689461ee3ea9022fc0d27494a556f14f1086f8149b885d5c 59b979f378be6ce75ecfd3430887bff747c273d1536c686f90def9e6c4ed2c12
|
||||
lib/codeql/rust/elements/internal/generated/SynthConstructors.qll f41abfc73415b7accb38da7c107faebfe6843c270ad54e0e54a96e930dfe479a f41abfc73415b7accb38da7c107faebfe6843c270ad54e0e54a96e930dfe479a
|
||||
lib/codeql/rust/elements/internal/generated/Token.qll 77a91a25ca5669703cf3a4353b591cef4d72caa6b0b9db07bb9e005d69c848d1 2fdffc4882ed3a6ca9ac6d1fb5f1ac5a471ca703e2ffdc642885fa558d6e373b
|
||||
lib/codeql/rust/elements/internal/generated/TokenTree.qll 1a3c4f5f30659738641abdd28cb793dab3cfde484196b59656fc0a2767e53511 de2ebb210c7759ef7a6f7ee9f805e1cac879221287281775fc80ba34a5492edf
|
||||
lib/codeql/rust/elements/internal/generated/Trait.qll 8fa41b50fa0f68333534f2b66bb4ec8e103ff09ac8fa5c2cc64bc04beafec205 ce1c9aa6d0e2f05d28aab8e1165c3b9fb8e24681ade0cf6a9df2e8617abeae7e
|
||||
@@ -631,7 +631,7 @@ lib/codeql/rust/elements/internal/generated/TupleStructPat.qll 6539d0edbdc16e7df
|
||||
lib/codeql/rust/elements/internal/generated/TupleTypeRepr.qll 1756cdbad56d634bf4726bc39c768386754e62650492d7d6344012038236a05b 3ac0997a47f95f28cc70c782173ce345fcb5b073be10f3c0b414d1df8443e04c
|
||||
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/TypeBound.qll 15e118049bb5aae24bce580e3dff62b7e73dcce9f7c6bc8dfd59d2c25ed64244 f18a35749f8fc003221e8f4315160756be592406637441929eda919ac493e835
|
||||
lib/codeql/rust/elements/internal/generated/TypeBoundList.qll c5d43dc27075a0d5370ba4bc56b4e247357af5d2989625deff284e7846a3a48b c33c87d080e6eb6df01e98b8b0031d780472fcaf3a1ed156a038669c0e05bf0a
|
||||
lib/codeql/rust/elements/internal/generated/TypeParam.qll 81a8d39f1e227de031187534e5d8e2c34f42ad3433061d686cadfbdd0df54285 893795d62b5b89997574e9057701d308bea2c4dca6053042c5308c512137e697
|
||||
lib/codeql/rust/elements/internal/generated/TypeRepr.qll 1e7b9d2ddab86e35dad7c31a6453a2a60747420f8bc2e689d5163cab4fec71bb eb80e3947649e511e7f3555ffc1fd87199e7a32624449ca80ffad996cdf9e2f3
|
||||
@@ -648,12 +648,12 @@ lib/codeql/rust/elements/internal/generated/Variant.qll fa6909715133049b3dba4622
|
||||
lib/codeql/rust/elements/internal/generated/VariantList.qll 3f70bfde982e5c5e8ee45da6ebe149286214f8d40377d5bc5e25df6ae8f3e2d1 22e5f428bf64fd3fd21c537bfa69a46089aad7c363d72c6566474fbe1d75859e
|
||||
lib/codeql/rust/elements/internal/generated/Visibility.qll af1069733c0120fae8610b3ebbcdcebe4b4c9ce4c3e3d9be3f82a93541873625 266106bdff4d7041d017871d755c011e7dd396c5999803d9e46725b6a03a2458
|
||||
lib/codeql/rust/elements/internal/generated/WhereClause.qll aec72d358689d99741c769b6e8e72b92c1458138c097ec2380e917aa68119ff0 81bb9d303bc0c8d2513dc7a2b8802ec15345b364e6c1e8b300f7860aac219c36
|
||||
lib/codeql/rust/elements/internal/generated/WherePred.qll 9aa63abdf1202ee4708e7413401811d481eac55ba576a4950653395f931d1e90 ebb9f2883f811ea101220eac13d02d2893d2ec0231a29826a32b77cb2c88a5f8
|
||||
lib/codeql/rust/elements/internal/generated/WherePred.qll 6826373cede8b4ac5d4719a183c6b30f840d48266f0e0c8e400574476f5a2f15 a82dcc24efac562d5b6247f9a105465ebafc9bebb4fc3648518bf9166e300dbd
|
||||
lib/codeql/rust/elements/internal/generated/WhileExpr.qll 0353aab87c49569e1fbf5828b8f44457230edfa6b408fb5ec70e3d9b70f2e277 e1ba7c9c41ff150b9aaa43642c0714def4407850f2149232260c1a2672dd574a
|
||||
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 6ebcf16ef214075bc43562c246c11f8b90c089ff1b5041ab1b39ab9f4a40e9b3 6ebcf16ef214075bc43562c246c11f8b90c089ff1b5041ab1b39ab9f4a40e9b3
|
||||
lib/codeql/rust/elements.qll 49df59c1b9574135b6ff2b0480b645f7303e81df042714b22b1070351d0076b9 49df59c1b9574135b6ff2b0480b645f7303e81df042714b22b1070351d0076b9
|
||||
test/extractor-tests/generated/Abi/Abi.ql 086ed104ab1a7e7fe5c1ed29e03f1719a797c7096c738868bf6ebe872ab8fdaa fe23fe67ab0d9201e1177ea3f844b18ed428e13e3ce77381bf2b6910adfa3a0e
|
||||
test/extractor-tests/generated/ArgList/ArgList.ql da97b5b25418b2aa8cb8df793f48870c89fa00759cdade8ddba60d7f1f4bbc01 acfd5d2caf67282ad2d57b961068472100482d0f770a52a3c00214c647d18c75
|
||||
test/extractor-tests/generated/ArrayListExpr/ArrayListExpr.ql 42b365276aa43e2cad588338463542d3ce1dd0db3a428621554584b07a1431d5 08a66a8b69af35ee3bc64c35c453a19a6c9881cc6cc7e65275d1fff056121270
|
||||
@@ -681,8 +681,7 @@ test/extractor-tests/generated/BoxPat/BoxPat.ql 854c9ba4e045dbe7ea1666866c1c443a
|
||||
test/extractor-tests/generated/BreakExpr/BreakExpr.ql c2181211da3dfe983cfca93ead32d5d211e91181899b9477152c58124eaa846d 57e57b926e14db2efb2e88e04699608b2ba9797ee4f6c4f710135b6858982256
|
||||
test/extractor-tests/generated/CallExpr/CallExpr.ql 2a1cd4485ccd8d4eb24a75889e832612adef9bb7feae414c90572796380bc6d7 95060b92aa04d7ad1fc6603c5ec14a275a5788ecb5a19932732e28105607a3b7
|
||||
test/extractor-tests/generated/CastExpr/CastExpr.ql 3480ec51072399409b7553ab6139c832db6ed4ca991f3a7a2282a39afe07c6f2 614c8ea7a2fe30d57583dbf84ed7a12743c2aba49d8c6252d31af3ed10853a39
|
||||
test/extractor-tests/generated/ClosureBinder/ClosureBinder.ql b68285fec6224b156754f51ee75a9b7ed32edaa16527e6f657a73bf6dd97eba3 d02b1b6d66dea1da892447d7b309f9b6e4eda0dd02055d71706d52aa73b5b9c4
|
||||
test/extractor-tests/generated/ClosureExpr/ClosureExpr.ql 849c874de45781b8491cee428cc00fefc8cdc76f87de8a373a181b16ce930ab1 5e570193befae7bfe6c21ce91e20afd52bb94f234e2be89d0974bd6337221508
|
||||
test/extractor-tests/generated/ClosureExpr/ClosureExpr.ql f9002cc327769edff05ae428d0c01ba80e18a217057d4d2c3a31eb24ab659ed6 8af2986890d0f3dd77c72023d992d5e587c9922b6f3ea378a6e268a51cfbbda5
|
||||
test/extractor-tests/generated/Comment/Comment.ql 0e0454911d2cf2e7ef5c6d860b84c57b9d490090914ebcf4fa0e8a70f777f066 cbd1c195276ef163f8d3c122344738c884dc9fb70eb2f9b7067829d735d48c4c
|
||||
test/extractor-tests/generated/Const/Const.ql 28a0f2debbf73ae867fc2d08d8e54d9e96fea69522b7180a48495c9b7fce9367 54d4a68a2b67db95ceb856535a8b27860ce2b502da17a7eeea3bb554d7fb5e43
|
||||
test/extractor-tests/generated/ConstArg/ConstArg.ql 21c7caf1939ff9fcc1bf0fe6dec5c6a6929f714cf1e17faf7a2f4a31c910194b 61eac00f4727f7269f926c53f53a62b5fae82ce7a02b42d23b9de6337b6f9d6e
|
||||
@@ -698,8 +697,9 @@ test/extractor-tests/generated/ExternCrate/ExternCrate.ql 7cd54aa65300453fc031e6
|
||||
test/extractor-tests/generated/ExternItemList/ExternItemList.ql 7f4d538d8878a0166b1868f391abf34df1d5e986a7a2e9ceaddb36d95bc7f46c 37072596f5a1e28ad98cc87dbfed00afadd83fa007f03d5b17d4dee8922b100f
|
||||
test/extractor-tests/generated/FieldExpr/FieldExpr.ql 2a04baaf57a22b65bd5b9e142e59cc2b7d3dd3174910ddc0c2510094f2dd32b1 d8e4fb4384aade1770c907d16795a4af9884051390a5a05935ad4b4df2e757a0
|
||||
test/extractor-tests/generated/FnPtrTypeRepr/FnPtrTypeRepr.ql 1501730f1e02e9d22b07b18bb42a5372e1d327bda62bdc81d75f9966946cb97d 28625f0b7ee4d7ab37fc13206585961e89a5e509a93215c16136d2382418b7af
|
||||
test/extractor-tests/generated/ForBinder/ForBinder.ql c95fd006eaddb9535eda0d527d71cdd5d3745fe464fd809a8d58b8c4dfc8790e 1d8b38059b8a25965eab9a8a1286384aa994d7cac7414b70b63c6a3d6bcf3c39
|
||||
test/extractor-tests/generated/ForExpr/ForExpr.ql 3bac38bf33e140ae9f88371ec90409f7de867e39cdea46f02b15519b236b57cb aade1baf6e6081b3b9bce5b7e95fe4b7ffe00ea9450fd6e1d6692ad97cf93fe9
|
||||
test/extractor-tests/generated/ForTypeRepr/ForTypeRepr.ql b74c0034bf5d1bb4a1a73ab822daca4572e80983a0c88620abe92bb794dd9cd8 a18f9a6d95b46b808c3a25e11fc54d2564ace67fb98d0c76632c5d5894b31030
|
||||
test/extractor-tests/generated/ForTypeRepr/ForTypeRepr.ql 5961055988b3a7749fb80e24d924bf1b67b0c52a6c895379beedd66a34bad04f d8ab72fac742314ead1aa0e1fed2535cc6597d278f3eef017bc9f8fd8cde83e7
|
||||
test/extractor-tests/generated/FormatArgsExpr/Format.ql 237ed2e01d9a75ee8521d6578333a7b1d566f09ef2102c4efcbb34ea58f2f9e8 09007ce4de701c0d1c0967f4f728ea9e627d9db19431bd9caebbf28ee51a1f36
|
||||
test/extractor-tests/generated/FormatArgsExpr/FormatArgsArg.ql 5abcb565dcd2822e2ea142d19b8c92194ee17c71c3db7595248690034559d174 1ffa743fc678701ffeefff6c14c1414bb9158e6756f32380dd590ff44b19ca5a
|
||||
test/extractor-tests/generated/FormatArgsExpr/FormatArgsExpr.ql 243c2f9d830f1eae915749e81ac78d3c140280385b0002d10fcc4d2feaf14711 72b90a99a8b1c16baf1e254e1e3463c3ce5409624a2a90829122717d4e5a2b74
|
||||
@@ -796,7 +796,7 @@ test/extractor-tests/generated/TupleStructPat/TupleStructPat.ql d00b185013bb4e5f
|
||||
test/extractor-tests/generated/TupleTypeRepr/TupleTypeRepr.ql 2f1503734d272cd0616e5885cd344659cbd0ae7309a375c8351f57f2b86c3302 276a4fe91b8dc64cdca4467343e2bb2e240c66ec1e4e11bf8cba73819c6532cc
|
||||
test/extractor-tests/generated/TypeAlias/TypeAlias.ql 2b120c7fe640b233540f6982153fddf50ddc089b8284dca321b4c48eecf93dfd 6d40a0d8c927dd499fd92fd95638c50eeca8f956aa1706c17913dbf83f0f500c
|
||||
test/extractor-tests/generated/TypeArg/TypeArg.ql e1ca286c03bd2d44054f5dd75aac250382037f243046c49ec752ad8d65e4c0ba f316d5fa84a721427c0aadf6bfa0ed4cfd86e4d318cfb0fe82efc52e65c4733b
|
||||
test/extractor-tests/generated/TypeBound/TypeBound.ql 4f5a2a49075c01c982988e66759f61c5285343d78cda94e228e17593d16fee6e 7aae320e881d6ea969e31b1e8fe586feb07b1db43c65da684cbac66157354851
|
||||
test/extractor-tests/generated/TypeBound/TypeBound.ql 41d0a7b6538de12797c5aa4152ea701517abe685b1160615f2d74203e7a00d34 f57128c66df37791f93db269451b1c617c991d8723ecb9efe4b8ff8b2559472c
|
||||
test/extractor-tests/generated/TypeBoundList/TypeBoundList.ql 6827529eca62f5e7be87538af6231099f5932f39d8694f7a76369273b93f28ea 539dac4ccda7e51b7ae1a9e05d8a56a98176d9de25d5ed4347ebe2fbea8adeb1
|
||||
test/extractor-tests/generated/TypeParam/TypeParam.ql c5f8f62f2877c719c3cf069f9d0ca83cebc14f7611c6c2dce86c85114ea2635c 751c630986f35a8d0d32fbeb61ca6ff801c96cd1829dbccc874fbf5f5158e98d
|
||||
test/extractor-tests/generated/UnderscoreExpr/UnderscoreExpr.ql a7b7a93104fff28515154cf8e79045d3eea2494b5c46f1caf36639c53b1c64a7 070ee2e1664e3291646ea56681b5c93331f94dcc519deb28622beca3e26e16f3
|
||||
@@ -809,7 +809,7 @@ test/extractor-tests/generated/Variant/Variant.ql 9405704e9192cac4838dcba8625261
|
||||
test/extractor-tests/generated/VariantList/VariantList.ql 1c1d82ce3ecfa7daaae1920662510e81892ed899a3c2f785e2ff3670245a03cd 29d4c5ab2b737a92c7525789e10a4aa9848f1a327e34f4e9543018021106b303
|
||||
test/extractor-tests/generated/Visibility/Visibility.ql 725d47d7444332133df603f9b06592dc40b0f83bf5e21ad4781c5658e001a3aa 2d65a30702a8bb5bc91caf6ae2d0e4c769b3eeb0d72ffbd9cdb81048be4061ad
|
||||
test/extractor-tests/generated/WhereClause/WhereClause.ql a6f0e69ffa6b997cac04d4da442eb8bde517a576840c953abcc40863b9099ba1 7ce888fffc3038d5b18f8c94d3b045815cd45500e1bb3849c05fc874edbeb695
|
||||
test/extractor-tests/generated/WherePred/WherePred.ql 504d00a40e418542c3e0ff30d43c4d2d0e7218b2a31fcf32c9310d705d97b9fe 61c53dde539a9e1e3d6bf13ca1d0dab8af6ea6b54ab698a0a5a5f49bf627934b
|
||||
test/extractor-tests/generated/WherePred/WherePred.ql 8f73500a04f8748221b181bb9a51bef6c09d5ddf046488303594821e3191b370 8fb51d095a3c39b51ec8b4515fc02474ba36067ca4dfd48dff7e14d1c3881ea3
|
||||
test/extractor-tests/generated/WhileExpr/WhileExpr.ql dcfe1ed375514a7b7513272767ed195cdbf339b56e00e62d207ca1eee080f164 f067283510655f0cf810cae834ac29ad2c6007ba312d027ebcdf695a23ec33e4
|
||||
test/extractor-tests/generated/WildcardPat/WildcardPat.ql d36f52a1d00d338b43894b6f8e198ad0c409542f436e3e57d527205c3dfee38c 4e1321e714cedb606e0d84f10ed37c72da61b3a1616754b967f721ff0bc0e4ee
|
||||
test/extractor-tests/generated/YeetExpr/YeetExpr.ql 5c552b490ccf5b123f7a2fa3e73d03d008e4df5928ffa0bd503dc6bd7736462c 09a4f413ae045051abe392f29949d6feab1a808d666c6b8dac0901f84a8a4740
|
||||
|
||||
10
rust/ql/.gitattributes
generated
vendored
10
rust/ql/.gitattributes
generated
vendored
@@ -38,7 +38,6 @@
|
||||
/lib/codeql/rust/elements/CallExprBase.qll linguist-generated
|
||||
/lib/codeql/rust/elements/Callable.qll linguist-generated
|
||||
/lib/codeql/rust/elements/CastExpr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/ClosureBinder.qll linguist-generated
|
||||
/lib/codeql/rust/elements/ClosureExpr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/Comment.qll linguist-generated
|
||||
/lib/codeql/rust/elements/Const.qll linguist-generated
|
||||
@@ -59,6 +58,7 @@
|
||||
/lib/codeql/rust/elements/FieldExpr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/FieldList.qll linguist-generated
|
||||
/lib/codeql/rust/elements/FnPtrTypeRepr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/ForBinder.qll linguist-generated
|
||||
/lib/codeql/rust/elements/ForExpr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/ForTypeRepr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/Format.qll linguist-generated
|
||||
@@ -243,8 +243,6 @@
|
||||
/lib/codeql/rust/elements/internal/BreakExprConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/CallExprConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/CastExprConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/ClosureBinderConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/ClosureBinderImpl.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/ClosureExprConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/CommentConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/ConstArgConstructor.qll linguist-generated
|
||||
@@ -275,6 +273,8 @@
|
||||
/lib/codeql/rust/elements/internal/FieldListImpl.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/FnPtrTypeReprConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/FnPtrTypeReprImpl.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/ForBinderConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/ForBinderImpl.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/ForExprConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/ForTypeReprConstructor.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/ForTypeReprImpl.qll linguist-generated
|
||||
@@ -494,7 +494,6 @@
|
||||
/lib/codeql/rust/elements/internal/generated/CallExprBase.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/Callable.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/CastExpr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/ClosureBinder.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/ClosureExpr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/Comment.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/Const.qll linguist-generated
|
||||
@@ -516,6 +515,7 @@
|
||||
/lib/codeql/rust/elements/internal/generated/FieldExpr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/FieldList.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/FnPtrTypeRepr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/ForBinder.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/ForExpr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/ForTypeRepr.qll linguist-generated
|
||||
/lib/codeql/rust/elements/internal/generated/Format.qll linguist-generated
|
||||
@@ -683,7 +683,6 @@
|
||||
/test/extractor-tests/generated/BreakExpr/BreakExpr.ql linguist-generated
|
||||
/test/extractor-tests/generated/CallExpr/CallExpr.ql linguist-generated
|
||||
/test/extractor-tests/generated/CastExpr/CastExpr.ql linguist-generated
|
||||
/test/extractor-tests/generated/ClosureBinder/ClosureBinder.ql linguist-generated
|
||||
/test/extractor-tests/generated/ClosureExpr/ClosureExpr.ql linguist-generated
|
||||
/test/extractor-tests/generated/Comment/Comment.ql linguist-generated
|
||||
/test/extractor-tests/generated/Const/Const.ql linguist-generated
|
||||
@@ -700,6 +699,7 @@
|
||||
/test/extractor-tests/generated/ExternItemList/ExternItemList.ql linguist-generated
|
||||
/test/extractor-tests/generated/FieldExpr/FieldExpr.ql linguist-generated
|
||||
/test/extractor-tests/generated/FnPtrTypeRepr/FnPtrTypeRepr.ql linguist-generated
|
||||
/test/extractor-tests/generated/ForBinder/ForBinder.ql linguist-generated
|
||||
/test/extractor-tests/generated/ForExpr/ForExpr.ql linguist-generated
|
||||
/test/extractor-tests/generated/ForTypeRepr/ForTypeRepr.ql linguist-generated
|
||||
/test/extractor-tests/generated/FormatArgsExpr/Format.ql linguist-generated
|
||||
|
||||
2
rust/ql/lib/codeql/rust/elements.qll
generated
2
rust/ql/lib/codeql/rust/elements.qll
generated
@@ -41,7 +41,6 @@ import codeql.rust.elements.CallExpr
|
||||
import codeql.rust.elements.CallExprBase
|
||||
import codeql.rust.elements.Callable
|
||||
import codeql.rust.elements.CastExpr
|
||||
import codeql.rust.elements.ClosureBinder
|
||||
import codeql.rust.elements.ClosureExpr
|
||||
import codeql.rust.elements.Comment
|
||||
import codeql.rust.elements.Const
|
||||
@@ -62,6 +61,7 @@ import codeql.rust.elements.ExternItemList
|
||||
import codeql.rust.elements.FieldExpr
|
||||
import codeql.rust.elements.FieldList
|
||||
import codeql.rust.elements.FnPtrTypeRepr
|
||||
import codeql.rust.elements.ForBinder
|
||||
import codeql.rust.elements.ForExpr
|
||||
import codeql.rust.elements.ForTypeRepr
|
||||
import codeql.rust.elements.Format
|
||||
|
||||
2
rust/ql/lib/codeql/rust/elements/ClosureExpr.qll
generated
2
rust/ql/lib/codeql/rust/elements/ClosureExpr.qll
generated
@@ -5,8 +5,8 @@
|
||||
|
||||
private import internal.ClosureExprImpl
|
||||
import codeql.rust.elements.Callable
|
||||
import codeql.rust.elements.ClosureBinder
|
||||
import codeql.rust.elements.Expr
|
||||
import codeql.rust.elements.ForBinder
|
||||
import codeql.rust.elements.RetTypeRepr
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
// generated by codegen, do not edit
|
||||
/**
|
||||
* This module provides the public class `ClosureBinder`.
|
||||
* This module provides the public class `ForBinder`.
|
||||
*/
|
||||
|
||||
private import internal.ClosureBinderImpl
|
||||
private import internal.ForBinderImpl
|
||||
import codeql.rust.elements.AstNode
|
||||
import codeql.rust.elements.GenericParamList
|
||||
|
||||
/**
|
||||
* A closure binder, specifying lifetime or type parameters for a closure.
|
||||
* A for binder, specifying lifetime or type parameters for a closure or a type.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
@@ -21,4 +21,4 @@ import codeql.rust.elements.GenericParamList
|
||||
* print_any("hello");
|
||||
* ```
|
||||
*/
|
||||
final class ClosureBinder = Impl::ClosureBinder;
|
||||
final class ForBinder = Impl::ForBinder;
|
||||
2
rust/ql/lib/codeql/rust/elements/ForTypeRepr.qll
generated
2
rust/ql/lib/codeql/rust/elements/ForTypeRepr.qll
generated
@@ -4,7 +4,7 @@
|
||||
*/
|
||||
|
||||
private import internal.ForTypeReprImpl
|
||||
import codeql.rust.elements.GenericParamList
|
||||
import codeql.rust.elements.ForBinder
|
||||
import codeql.rust.elements.TypeRepr
|
||||
|
||||
/**
|
||||
|
||||
1
rust/ql/lib/codeql/rust/elements/TypeBound.qll
generated
1
rust/ql/lib/codeql/rust/elements/TypeBound.qll
generated
@@ -5,6 +5,7 @@
|
||||
|
||||
private import internal.TypeBoundImpl
|
||||
import codeql.rust.elements.AstNode
|
||||
import codeql.rust.elements.ForBinder
|
||||
import codeql.rust.elements.Lifetime
|
||||
import codeql.rust.elements.TypeRepr
|
||||
import codeql.rust.elements.UseBoundGenericArgs
|
||||
|
||||
2
rust/ql/lib/codeql/rust/elements/WherePred.qll
generated
2
rust/ql/lib/codeql/rust/elements/WherePred.qll
generated
@@ -5,7 +5,7 @@
|
||||
|
||||
private import internal.WherePredImpl
|
||||
import codeql.rust.elements.AstNode
|
||||
import codeql.rust.elements.GenericParamList
|
||||
import codeql.rust.elements.ForBinder
|
||||
import codeql.rust.elements.Lifetime
|
||||
import codeql.rust.elements.TypeBoundList
|
||||
import codeql.rust.elements.TypeRepr
|
||||
|
||||
@@ -1,14 +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
|
||||
* `ClosureBinder` synthesized instances.
|
||||
* `ForBinder` synthesized instances.
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
|
||||
private import codeql.rust.elements.internal.generated.Raw
|
||||
|
||||
/**
|
||||
* The characteristic predicate of `ClosureBinder` synthesized instances.
|
||||
* The characteristic predicate of `ForBinder` synthesized instances.
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
predicate constructClosureBinder(Raw::ClosureBinder id) { any() }
|
||||
predicate constructForBinder(Raw::ForBinder id) { any() }
|
||||
@@ -1,19 +1,19 @@
|
||||
// generated by codegen, remove this comment if you wish to edit this file
|
||||
/**
|
||||
* This module provides a hand-modifiable wrapper around the generated class `ClosureBinder`.
|
||||
* This module provides a hand-modifiable wrapper around the generated class `ForBinder`.
|
||||
*
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
|
||||
private import codeql.rust.elements.internal.generated.ClosureBinder
|
||||
private import codeql.rust.elements.internal.generated.ForBinder
|
||||
|
||||
/**
|
||||
* INTERNAL: This module contains the customizable definition of `ClosureBinder` and should not
|
||||
* INTERNAL: This module contains the customizable definition of `ForBinder` and should not
|
||||
* be referenced directly.
|
||||
*/
|
||||
module Impl {
|
||||
/**
|
||||
* A closure binder, specifying lifetime or type parameters for a closure.
|
||||
* A for binder, specifying lifetime or type parameters for a closure or a type.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
@@ -26,5 +26,5 @@ module Impl {
|
||||
* print_any("hello");
|
||||
* ```
|
||||
*/
|
||||
class ClosureBinder extends Generated::ClosureBinder { }
|
||||
class ForBinder extends Generated::ForBinder { }
|
||||
}
|
||||
@@ -7,9 +7,9 @@
|
||||
private import codeql.rust.elements.internal.generated.Synth
|
||||
private import codeql.rust.elements.internal.generated.Raw
|
||||
import codeql.rust.elements.internal.CallableImpl::Impl as CallableImpl
|
||||
import codeql.rust.elements.ClosureBinder
|
||||
import codeql.rust.elements.Expr
|
||||
import codeql.rust.elements.internal.ExprImpl::Impl as ExprImpl
|
||||
import codeql.rust.elements.ForBinder
|
||||
import codeql.rust.elements.RetTypeRepr
|
||||
|
||||
/**
|
||||
@@ -48,19 +48,19 @@ module Generated {
|
||||
final predicate hasBody() { exists(this.getBody()) }
|
||||
|
||||
/**
|
||||
* Gets the closure binder of this closure expression, if it exists.
|
||||
* Gets the for binder of this closure expression, if it exists.
|
||||
*/
|
||||
ClosureBinder getClosureBinder() {
|
||||
ForBinder getForBinder() {
|
||||
result =
|
||||
Synth::convertClosureBinderFromRaw(Synth::convertClosureExprToRaw(this)
|
||||
Synth::convertForBinderFromRaw(Synth::convertClosureExprToRaw(this)
|
||||
.(Raw::ClosureExpr)
|
||||
.getClosureBinder())
|
||||
.getForBinder())
|
||||
}
|
||||
|
||||
/**
|
||||
* Holds if `getClosureBinder()` exists.
|
||||
* Holds if `getForBinder()` exists.
|
||||
*/
|
||||
final predicate hasClosureBinder() { exists(this.getClosureBinder()) }
|
||||
final predicate hasForBinder() { exists(this.getForBinder()) }
|
||||
|
||||
/**
|
||||
* Holds if this closure expression is async.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// generated by codegen, do not edit
|
||||
/**
|
||||
* This module provides the generated definition of `ClosureBinder`.
|
||||
* This module provides the generated definition of `ForBinder`.
|
||||
* INTERNAL: Do not import directly.
|
||||
*/
|
||||
|
||||
@@ -10,12 +10,12 @@ import codeql.rust.elements.internal.AstNodeImpl::Impl as AstNodeImpl
|
||||
import codeql.rust.elements.GenericParamList
|
||||
|
||||
/**
|
||||
* INTERNAL: This module contains the fully generated definition of `ClosureBinder` and should not
|
||||
* INTERNAL: This module contains the fully generated definition of `ForBinder` and should not
|
||||
* be referenced directly.
|
||||
*/
|
||||
module Generated {
|
||||
/**
|
||||
* A closure binder, specifying lifetime or type parameters for a closure.
|
||||
* A for binder, specifying lifetime or type parameters for a closure or a type.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
@@ -27,19 +27,19 @@ module Generated {
|
||||
* print_any(42);
|
||||
* print_any("hello");
|
||||
* ```
|
||||
* INTERNAL: Do not reference the `Generated::ClosureBinder` class directly.
|
||||
* Use the subclass `ClosureBinder`, where the following predicates are available.
|
||||
* INTERNAL: Do not reference the `Generated::ForBinder` class directly.
|
||||
* Use the subclass `ForBinder`, where the following predicates are available.
|
||||
*/
|
||||
class ClosureBinder extends Synth::TClosureBinder, AstNodeImpl::AstNode {
|
||||
override string getAPrimaryQlClass() { result = "ClosureBinder" }
|
||||
class ForBinder extends Synth::TForBinder, AstNodeImpl::AstNode {
|
||||
override string getAPrimaryQlClass() { result = "ForBinder" }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this closure binder, if it exists.
|
||||
* Gets the generic parameter list of this for binder, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() {
|
||||
result =
|
||||
Synth::convertGenericParamListFromRaw(Synth::convertClosureBinderToRaw(this)
|
||||
.(Raw::ClosureBinder)
|
||||
Synth::convertGenericParamListFromRaw(Synth::convertForBinderToRaw(this)
|
||||
.(Raw::ForBinder)
|
||||
.getGenericParamList())
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
private import codeql.rust.elements.internal.generated.Synth
|
||||
private import codeql.rust.elements.internal.generated.Raw
|
||||
import codeql.rust.elements.GenericParamList
|
||||
import codeql.rust.elements.ForBinder
|
||||
import codeql.rust.elements.TypeRepr
|
||||
import codeql.rust.elements.internal.TypeReprImpl::Impl as TypeReprImpl
|
||||
|
||||
@@ -35,19 +35,19 @@ module Generated {
|
||||
override string getAPrimaryQlClass() { result = "ForTypeRepr" }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this for type representation, if it exists.
|
||||
* Gets the for binder of this for type representation, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() {
|
||||
ForBinder getForBinder() {
|
||||
result =
|
||||
Synth::convertGenericParamListFromRaw(Synth::convertForTypeReprToRaw(this)
|
||||
Synth::convertForBinderFromRaw(Synth::convertForTypeReprToRaw(this)
|
||||
.(Raw::ForTypeRepr)
|
||||
.getGenericParamList())
|
||||
.getForBinder())
|
||||
}
|
||||
|
||||
/**
|
||||
* Holds if `getGenericParamList()` exists.
|
||||
* Holds if `getForBinder()` exists.
|
||||
*/
|
||||
final predicate hasGenericParamList() { exists(this.getGenericParamList()) }
|
||||
final predicate hasForBinder() { exists(this.getForBinder()) }
|
||||
|
||||
/**
|
||||
* Gets the type representation of this for type representation, if it exists.
|
||||
|
||||
@@ -152,22 +152,6 @@ private module Impl {
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfClosureBinder(
|
||||
ClosureBinder e, int index, string partialPredicateCall
|
||||
) {
|
||||
exists(int n, int nGenericParamList |
|
||||
n = 0 and
|
||||
nGenericParamList = n + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getGenericParamList() and
|
||||
partialPredicateCall = "GenericParamList()"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfExternItemList(
|
||||
ExternItemList e, int index, string partialPredicateCall
|
||||
) {
|
||||
@@ -187,6 +171,20 @@ private module Impl {
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfForBinder(ForBinder e, int index, string partialPredicateCall) {
|
||||
exists(int n, int nGenericParamList |
|
||||
n = 0 and
|
||||
nGenericParamList = n + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getGenericParamList() and
|
||||
partialPredicateCall = "GenericParamList()"
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfFormatArgsArg(
|
||||
FormatArgsArg e, int index, string partialPredicateCall
|
||||
) {
|
||||
@@ -656,15 +654,18 @@ private module Impl {
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfTypeBound(TypeBound e, int index, string partialPredicateCall) {
|
||||
exists(int n, int nLifetime, int nTypeRepr, int nUseBoundGenericArgs |
|
||||
exists(int n, int nForBinder, int nLifetime, int nTypeRepr, int nUseBoundGenericArgs |
|
||||
n = 0 and
|
||||
nLifetime = n + 1 and
|
||||
nForBinder = n + 1 and
|
||||
nLifetime = nForBinder + 1 and
|
||||
nTypeRepr = nLifetime + 1 and
|
||||
nUseBoundGenericArgs = nTypeRepr + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and result = e.getLifetime() and partialPredicateCall = "Lifetime()"
|
||||
index = n and result = e.getForBinder() and partialPredicateCall = "ForBinder()"
|
||||
or
|
||||
index = nForBinder and result = e.getLifetime() and partialPredicateCall = "Lifetime()"
|
||||
or
|
||||
index = nLifetime and result = e.getTypeRepr() and partialPredicateCall = "TypeRepr()"
|
||||
or
|
||||
@@ -781,22 +782,18 @@ private module Impl {
|
||||
}
|
||||
|
||||
private Element getImmediateChildOfWherePred(WherePred e, int index, string partialPredicateCall) {
|
||||
exists(int n, int nGenericParamList, int nLifetime, int nTypeRepr, int nTypeBoundList |
|
||||
exists(int n, int nForBinder, int nLifetime, int nTypeRepr, int nTypeBoundList |
|
||||
n = 0 and
|
||||
nGenericParamList = n + 1 and
|
||||
nLifetime = nGenericParamList + 1 and
|
||||
nForBinder = n + 1 and
|
||||
nLifetime = nForBinder + 1 and
|
||||
nTypeRepr = nLifetime + 1 and
|
||||
nTypeBoundList = nTypeRepr + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getGenericParamList() and
|
||||
partialPredicateCall = "GenericParamList()"
|
||||
index = n and result = e.getForBinder() and partialPredicateCall = "ForBinder()"
|
||||
or
|
||||
index = nGenericParamList and
|
||||
result = e.getLifetime() and
|
||||
partialPredicateCall = "Lifetime()"
|
||||
index = nForBinder and result = e.getLifetime() and partialPredicateCall = "Lifetime()"
|
||||
or
|
||||
index = nLifetime and result = e.getTypeRepr() and partialPredicateCall = "TypeRepr()"
|
||||
or
|
||||
@@ -1095,13 +1092,13 @@ private module Impl {
|
||||
private Element getImmediateChildOfClosureExpr(
|
||||
ClosureExpr e, int index, string partialPredicateCall
|
||||
) {
|
||||
exists(int n, int nParamList, int nAttr, int nBody, int nClosureBinder, int nRetType |
|
||||
exists(int n, int nParamList, int nAttr, int nBody, int nForBinder, int nRetType |
|
||||
n = 0 and
|
||||
nParamList = n + 1 and
|
||||
nAttr = nParamList + 1 + max(int i | i = -1 or exists(e.getAttr(i)) | i) and
|
||||
nBody = nAttr + 1 and
|
||||
nClosureBinder = nBody + 1 and
|
||||
nRetType = nClosureBinder + 1 and
|
||||
nForBinder = nBody + 1 and
|
||||
nRetType = nForBinder + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
@@ -1112,9 +1109,9 @@ private module Impl {
|
||||
or
|
||||
index = nAttr and result = e.getBody() and partialPredicateCall = "Body()"
|
||||
or
|
||||
index = nBody and result = e.getClosureBinder() and partialPredicateCall = "ClosureBinder()"
|
||||
index = nBody and result = e.getForBinder() and partialPredicateCall = "ForBinder()"
|
||||
or
|
||||
index = nClosureBinder and result = e.getRetType() and partialPredicateCall = "RetType()"
|
||||
index = nForBinder and result = e.getRetType() and partialPredicateCall = "RetType()"
|
||||
)
|
||||
)
|
||||
}
|
||||
@@ -1257,20 +1254,16 @@ private module Impl {
|
||||
private Element getImmediateChildOfForTypeRepr(
|
||||
ForTypeRepr e, int index, string partialPredicateCall
|
||||
) {
|
||||
exists(int n, int nGenericParamList, int nTypeRepr |
|
||||
exists(int n, int nForBinder, int nTypeRepr |
|
||||
n = 0 and
|
||||
nGenericParamList = n + 1 and
|
||||
nTypeRepr = nGenericParamList + 1 and
|
||||
nForBinder = n + 1 and
|
||||
nTypeRepr = nForBinder + 1 and
|
||||
(
|
||||
none()
|
||||
or
|
||||
index = n and
|
||||
result = e.getGenericParamList() and
|
||||
partialPredicateCall = "GenericParamList()"
|
||||
index = n and result = e.getForBinder() and partialPredicateCall = "ForBinder()"
|
||||
or
|
||||
index = nGenericParamList and
|
||||
result = e.getTypeRepr() and
|
||||
partialPredicateCall = "TypeRepr()"
|
||||
index = nForBinder and result = e.getTypeRepr() and partialPredicateCall = "TypeRepr()"
|
||||
)
|
||||
)
|
||||
}
|
||||
@@ -3072,10 +3065,10 @@ private module Impl {
|
||||
or
|
||||
result = getImmediateChildOfAttr(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfClosureBinder(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfExternItemList(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfForBinder(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfFormatArgsArg(e, index, partialAccessor)
|
||||
or
|
||||
result = getImmediateChildOfGenericArgList(e, index, partialAccessor)
|
||||
|
||||
@@ -319,30 +319,6 @@ module Raw {
|
||||
Attr getAttr(int index) { callable_attrs(this, index, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A closure binder, specifying lifetime or type parameters for a closure.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
* let print_any = for<T: std::fmt::Debug> |x: T| {
|
||||
* // ^^^^^^^^^^^^^^^^^^^^^^^
|
||||
* println!("{:?}", x);
|
||||
* };
|
||||
*
|
||||
* print_any(42);
|
||||
* print_any("hello");
|
||||
* ```
|
||||
*/
|
||||
class ClosureBinder extends @closure_binder, AstNode {
|
||||
override string toString() { result = "ClosureBinder" }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this closure binder, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() { closure_binder_generic_param_lists(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* The base class for expressions.
|
||||
@@ -389,6 +365,30 @@ module Raw {
|
||||
*/
|
||||
class FieldList extends @field_list, AstNode { }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A for binder, specifying lifetime or type parameters for a closure or a type.
|
||||
*
|
||||
* For example:
|
||||
* ```rust
|
||||
* let print_any = for<T: std::fmt::Debug> |x: T| {
|
||||
* // ^^^^^^^^^^^^^^^^^^^^^^^
|
||||
* println!("{:?}", x);
|
||||
* };
|
||||
*
|
||||
* print_any(42);
|
||||
* print_any("hello");
|
||||
* ```
|
||||
*/
|
||||
class ForBinder extends @for_binder, AstNode {
|
||||
override string toString() { result = "ForBinder" }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this for binder, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() { for_binder_generic_param_lists(this, result) }
|
||||
}
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* A FormatArgsArg. For example the `"world"` in:
|
||||
@@ -1209,6 +1209,11 @@ module Raw {
|
||||
class TypeBound extends @type_bound, AstNode {
|
||||
override string toString() { result = "TypeBound" }
|
||||
|
||||
/**
|
||||
* Gets the for binder of this type bound, if it exists.
|
||||
*/
|
||||
ForBinder getForBinder() { type_bound_for_binders(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this type bound is async.
|
||||
*/
|
||||
@@ -1415,9 +1420,9 @@ module Raw {
|
||||
override string toString() { result = "WherePred" }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this where pred, if it exists.
|
||||
* Gets the for binder of this where pred, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() { where_pred_generic_param_lists(this, result) }
|
||||
ForBinder getForBinder() { where_pred_for_binders(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the lifetime of this where pred, if it exists.
|
||||
@@ -1912,9 +1917,9 @@ module Raw {
|
||||
Expr getBody() { closure_expr_bodies(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the closure binder of this closure expression, if it exists.
|
||||
* Gets the for binder of this closure expression, if it exists.
|
||||
*/
|
||||
ClosureBinder getClosureBinder() { closure_expr_closure_binders(this, result) }
|
||||
ForBinder getForBinder() { closure_expr_for_binders(this, result) }
|
||||
|
||||
/**
|
||||
* Holds if this closure expression is async.
|
||||
@@ -2209,9 +2214,9 @@ module Raw {
|
||||
override string toString() { result = "ForTypeRepr" }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this for type representation, if it exists.
|
||||
* Gets the for binder of this for type representation, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() { for_type_repr_generic_param_lists(this, result) }
|
||||
ForBinder getForBinder() { for_type_repr_for_binders(this, result) }
|
||||
|
||||
/**
|
||||
* Gets the type representation of this for type representation, if it exists.
|
||||
|
||||
@@ -130,10 +130,6 @@ module Synth {
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
TCastExpr(Raw::CastExpr id) { constructCastExpr(id) } or
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
TClosureBinder(Raw::ClosureBinder id) { constructClosureBinder(id) } or
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
@@ -202,6 +198,10 @@ module Synth {
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
TFnPtrTypeRepr(Raw::FnPtrTypeRepr id) { constructFnPtrTypeRepr(id) } or
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
TForBinder(Raw::ForBinder id) { constructForBinder(id) } or
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
*/
|
||||
@@ -718,8 +718,8 @@ module Synth {
|
||||
*/
|
||||
class TAstNode =
|
||||
TAbi or TAddressable or TArgList or TAsmDirSpec or TAsmOperand or TAsmOperandExpr or
|
||||
TAsmOption or TAsmPiece or TAsmRegSpec or TAssocItemList or TAttr or TCallable or
|
||||
TClosureBinder or TExpr or TExternItemList or TFieldList or TFormatArgsArg or TGenericArg or
|
||||
TAsmOption or TAsmPiece or TAsmRegSpec or TAssocItemList or TAttr or TCallable or TExpr or
|
||||
TExternItemList or TFieldList or TForBinder 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
|
||||
@@ -1024,12 +1024,6 @@ module Synth {
|
||||
*/
|
||||
TCastExpr convertCastExprFromRaw(Raw::Element e) { result = TCastExpr(e) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a raw element to a synthesized `TClosureBinder`, if possible.
|
||||
*/
|
||||
TClosureBinder convertClosureBinderFromRaw(Raw::Element e) { result = TClosureBinder(e) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a raw element to a synthesized `TClosureExpr`, if possible.
|
||||
@@ -1132,6 +1126,12 @@ module Synth {
|
||||
*/
|
||||
TFnPtrTypeRepr convertFnPtrTypeReprFromRaw(Raw::Element e) { result = TFnPtrTypeRepr(e) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a raw element to a synthesized `TForBinder`, if possible.
|
||||
*/
|
||||
TForBinder convertForBinderFromRaw(Raw::Element e) { result = TForBinder(e) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a raw element to a synthesized `TForExpr`, if possible.
|
||||
@@ -1953,14 +1953,14 @@ module Synth {
|
||||
or
|
||||
result = convertCallableFromRaw(e)
|
||||
or
|
||||
result = convertClosureBinderFromRaw(e)
|
||||
or
|
||||
result = convertExprFromRaw(e)
|
||||
or
|
||||
result = convertExternItemListFromRaw(e)
|
||||
or
|
||||
result = convertFieldListFromRaw(e)
|
||||
or
|
||||
result = convertForBinderFromRaw(e)
|
||||
or
|
||||
result = convertFormatArgsArgFromRaw(e)
|
||||
or
|
||||
result = convertGenericArgFromRaw(e)
|
||||
@@ -2612,12 +2612,6 @@ module Synth {
|
||||
*/
|
||||
Raw::Element convertCastExprToRaw(TCastExpr e) { e = TCastExpr(result) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a synthesized `TClosureBinder` to a raw DB element, if possible.
|
||||
*/
|
||||
Raw::Element convertClosureBinderToRaw(TClosureBinder e) { e = TClosureBinder(result) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a synthesized `TClosureExpr` to a raw DB element, if possible.
|
||||
@@ -2720,6 +2714,12 @@ module Synth {
|
||||
*/
|
||||
Raw::Element convertFnPtrTypeReprToRaw(TFnPtrTypeRepr e) { e = TFnPtrTypeRepr(result) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a synthesized `TForBinder` to a raw DB element, if possible.
|
||||
*/
|
||||
Raw::Element convertForBinderToRaw(TForBinder e) { e = TForBinder(result) }
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
* Converts a synthesized `TForExpr` to a raw DB element, if possible.
|
||||
@@ -3539,14 +3539,14 @@ module Synth {
|
||||
or
|
||||
result = convertCallableToRaw(e)
|
||||
or
|
||||
result = convertClosureBinderToRaw(e)
|
||||
or
|
||||
result = convertExprToRaw(e)
|
||||
or
|
||||
result = convertExternItemListToRaw(e)
|
||||
or
|
||||
result = convertFieldListToRaw(e)
|
||||
or
|
||||
result = convertForBinderToRaw(e)
|
||||
or
|
||||
result = convertFormatArgsArgToRaw(e)
|
||||
or
|
||||
result = convertGenericArgToRaw(e)
|
||||
|
||||
@@ -32,7 +32,6 @@ import codeql.rust.elements.internal.BoxPatConstructor
|
||||
import codeql.rust.elements.internal.BreakExprConstructor
|
||||
import codeql.rust.elements.internal.CallExprConstructor
|
||||
import codeql.rust.elements.internal.CastExprConstructor
|
||||
import codeql.rust.elements.internal.ClosureBinderConstructor
|
||||
import codeql.rust.elements.internal.ClosureExprConstructor
|
||||
import codeql.rust.elements.internal.CommentConstructor
|
||||
import codeql.rust.elements.internal.ConstConstructor
|
||||
@@ -50,6 +49,7 @@ import codeql.rust.elements.internal.ExternItemListConstructor
|
||||
import codeql.rust.elements.internal.ExtractorStepConstructor
|
||||
import codeql.rust.elements.internal.FieldExprConstructor
|
||||
import codeql.rust.elements.internal.FnPtrTypeReprConstructor
|
||||
import codeql.rust.elements.internal.ForBinderConstructor
|
||||
import codeql.rust.elements.internal.ForExprConstructor
|
||||
import codeql.rust.elements.internal.ForTypeReprConstructor
|
||||
import codeql.rust.elements.internal.FormatConstructor
|
||||
|
||||
@@ -7,6 +7,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.ForBinder
|
||||
import codeql.rust.elements.Lifetime
|
||||
import codeql.rust.elements.TypeRepr
|
||||
import codeql.rust.elements.UseBoundGenericArgs
|
||||
@@ -30,6 +31,21 @@ module Generated {
|
||||
class TypeBound extends Synth::TTypeBound, AstNodeImpl::AstNode {
|
||||
override string getAPrimaryQlClass() { result = "TypeBound" }
|
||||
|
||||
/**
|
||||
* Gets the for binder of this type bound, if it exists.
|
||||
*/
|
||||
ForBinder getForBinder() {
|
||||
result =
|
||||
Synth::convertForBinderFromRaw(Synth::convertTypeBoundToRaw(this)
|
||||
.(Raw::TypeBound)
|
||||
.getForBinder())
|
||||
}
|
||||
|
||||
/**
|
||||
* Holds if `getForBinder()` exists.
|
||||
*/
|
||||
final predicate hasForBinder() { exists(this.getForBinder()) }
|
||||
|
||||
/**
|
||||
* Holds if this type bound is async.
|
||||
*/
|
||||
|
||||
@@ -7,7 +7,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.GenericParamList
|
||||
import codeql.rust.elements.ForBinder
|
||||
import codeql.rust.elements.Lifetime
|
||||
import codeql.rust.elements.TypeBoundList
|
||||
import codeql.rust.elements.TypeRepr
|
||||
@@ -32,19 +32,19 @@ module Generated {
|
||||
override string getAPrimaryQlClass() { result = "WherePred" }
|
||||
|
||||
/**
|
||||
* Gets the generic parameter list of this where pred, if it exists.
|
||||
* Gets the for binder of this where pred, if it exists.
|
||||
*/
|
||||
GenericParamList getGenericParamList() {
|
||||
ForBinder getForBinder() {
|
||||
result =
|
||||
Synth::convertGenericParamListFromRaw(Synth::convertWherePredToRaw(this)
|
||||
Synth::convertForBinderFromRaw(Synth::convertWherePredToRaw(this)
|
||||
.(Raw::WherePred)
|
||||
.getGenericParamList())
|
||||
.getForBinder())
|
||||
}
|
||||
|
||||
/**
|
||||
* Holds if `getGenericParamList()` exists.
|
||||
* Holds if `getForBinder()` exists.
|
||||
*/
|
||||
final predicate hasGenericParamList() { exists(this.getGenericParamList()) }
|
||||
final predicate hasForBinder() { exists(this.getForBinder()) }
|
||||
|
||||
/**
|
||||
* Gets the lifetime of this where pred, if it exists.
|
||||
|
||||
@@ -177,10 +177,10 @@ named_crates(
|
||||
| @assoc_item_list
|
||||
| @attr
|
||||
| @callable
|
||||
| @closure_binder
|
||||
| @expr
|
||||
| @extern_item_list
|
||||
| @field_list
|
||||
| @for_binder
|
||||
| @format_args_arg
|
||||
| @generic_arg
|
||||
| @generic_arg_list
|
||||
@@ -403,16 +403,6 @@ callable_attrs(
|
||||
int attr: @attr ref
|
||||
);
|
||||
|
||||
closure_binders(
|
||||
unique int id: @closure_binder
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
closure_binder_generic_param_lists(
|
||||
int id: @closure_binder ref,
|
||||
int generic_param_list: @generic_param_list ref
|
||||
);
|
||||
|
||||
@expr =
|
||||
@array_expr_internal
|
||||
| @asm_expr
|
||||
@@ -472,6 +462,16 @@ extern_item_list_extern_items(
|
||||
| @tuple_field_list
|
||||
;
|
||||
|
||||
for_binders(
|
||||
unique int id: @for_binder
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
for_binder_generic_param_lists(
|
||||
int id: @for_binder ref,
|
||||
int generic_param_list: @generic_param_list ref
|
||||
);
|
||||
|
||||
format_args_args(
|
||||
unique int id: @format_args_arg
|
||||
);
|
||||
@@ -1044,6 +1044,12 @@ type_bounds(
|
||||
unique int id: @type_bound
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_bound_for_binders(
|
||||
int id: @type_bound ref,
|
||||
int for_binder: @for_binder ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
type_bound_is_async(
|
||||
int id: @type_bound ref
|
||||
@@ -1191,9 +1197,9 @@ where_preds(
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
where_pred_generic_param_lists(
|
||||
where_pred_for_binders(
|
||||
int id: @where_pred ref,
|
||||
int generic_param_list: @generic_param_list ref
|
||||
int for_binder: @for_binder ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
@@ -1541,9 +1547,9 @@ closure_expr_bodies(
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
closure_expr_closure_binders(
|
||||
closure_expr_for_binders(
|
||||
int id: @closure_expr ref,
|
||||
int closure_binder: @closure_binder ref
|
||||
int for_binder: @for_binder ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
@@ -1744,9 +1750,9 @@ for_type_reprs(
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
for_type_repr_generic_param_lists(
|
||||
for_type_repr_for_binders(
|
||||
int id: @for_type_repr ref,
|
||||
int generic_param_list: @generic_param_list ref
|
||||
int for_binder: @for_binder ref
|
||||
);
|
||||
|
||||
#keyset[id]
|
||||
|
||||
@@ -25,7 +25,6 @@ BoxPat/gen_box_pat.rs 1493e24b732370b577ade38c47db17fa157df19f5390606a67a6040e49
|
||||
BreakExpr/gen_break_expr.rs aacdf9df7fc51d19742b9e813835c0bd0913017e8d62765960e06b27d58b9031 aacdf9df7fc51d19742b9e813835c0bd0913017e8d62765960e06b27d58b9031
|
||||
CallExpr/gen_call_expr.rs 013a7c878996aefb25b94b68eebc4f0b1bb74ccd09e91c491980817a383e2401 013a7c878996aefb25b94b68eebc4f0b1bb74ccd09e91c491980817a383e2401
|
||||
CastExpr/gen_cast_expr.rs c3892211fbae4fed7cb1f25ff1679fd79d2878bf0bf2bd4b7982af23d00129f5 c3892211fbae4fed7cb1f25ff1679fd79d2878bf0bf2bd4b7982af23d00129f5
|
||||
ClosureBinder/gen_closure_binder.rs 14b5e2deb2bbba164f1aee378be18e99e3c5a926628e964dcc2fbb349ff3b672 14b5e2deb2bbba164f1aee378be18e99e3c5a926628e964dcc2fbb349ff3b672
|
||||
ClosureExpr/gen_closure_expr.rs 15bd9abdb8aaffabb8bb335f8ebd0571eb5f29115e1dc8d11837aa988702cd80 15bd9abdb8aaffabb8bb335f8ebd0571eb5f29115e1dc8d11837aa988702cd80
|
||||
Comment/gen_comment.rs 1e1f9f43161a79c096c2056e8b7f5346385ab7addcdec68c2d53b383dd3debe6 1e1f9f43161a79c096c2056e8b7f5346385ab7addcdec68c2d53b383dd3debe6
|
||||
Const/gen_const.rs a3b971134a4204d0da12563fcefa9ab72f3f2f2e957e82b70c8548b5807f375f a3b971134a4204d0da12563fcefa9ab72f3f2f2e957e82b70c8548b5807f375f
|
||||
@@ -41,6 +40,7 @@ ExternCrate/gen_extern_crate.rs 8d6bfd8d993a8e3a95ae9ccb576bd55be0c6a1d0893cfe15
|
||||
ExternItemList/gen_extern_item_list.rs f9a03ddf20387871b96994915c9a725feb333d061544c0fb6d2e6b1a1961d6ed f9a03ddf20387871b96994915c9a725feb333d061544c0fb6d2e6b1a1961d6ed
|
||||
FieldExpr/gen_field_expr.rs 9a70500d592e0a071b03d974a55558b3bc0df531ff11bce5898feb36e17ffd8b 9a70500d592e0a071b03d974a55558b3bc0df531ff11bce5898feb36e17ffd8b
|
||||
FnPtrTypeRepr/gen_fn_ptr_type_repr.rs c154ec0cc43236d133f6b946374f3063b89e5cbf9e96d9ee66877be4f948888e c154ec0cc43236d133f6b946374f3063b89e5cbf9e96d9ee66877be4f948888e
|
||||
ForBinder/gen_for_binder.rs e3c9e5ffd3f2a5a546af9ab6e2a2ed733baf9cf609e05850b70feb31478a0bae e3c9e5ffd3f2a5a546af9ab6e2a2ed733baf9cf609e05850b70feb31478a0bae
|
||||
ForExpr/gen_for_expr.rs 003dc36e3dc4db6e3a4accd410c316f14334ba5b3d5d675c851a91dcd5185122 003dc36e3dc4db6e3a4accd410c316f14334ba5b3d5d675c851a91dcd5185122
|
||||
ForTypeRepr/gen_for_type_repr.rs 86f2f11f399d8072add3d3109a186d82d95d141660b18986bce738b7e9ec81a2 86f2f11f399d8072add3d3109a186d82d95d141660b18986bce738b7e9ec81a2
|
||||
FormatArgsExpr/gen_format.rs e9d8e7b98d0050ad6053c2459cb21faab00078e74245336a5962438336f76d33 e9d8e7b98d0050ad6053c2459cb21faab00078e74245336a5962438336f76d33
|
||||
|
||||
2
rust/ql/test/extractor-tests/generated/.gitattributes
generated
vendored
2
rust/ql/test/extractor-tests/generated/.gitattributes
generated
vendored
@@ -27,7 +27,6 @@
|
||||
/BreakExpr/gen_break_expr.rs linguist-generated
|
||||
/CallExpr/gen_call_expr.rs linguist-generated
|
||||
/CastExpr/gen_cast_expr.rs linguist-generated
|
||||
/ClosureBinder/gen_closure_binder.rs linguist-generated
|
||||
/ClosureExpr/gen_closure_expr.rs linguist-generated
|
||||
/Comment/gen_comment.rs linguist-generated
|
||||
/Const/gen_const.rs linguist-generated
|
||||
@@ -43,6 +42,7 @@
|
||||
/ExternItemList/gen_extern_item_list.rs linguist-generated
|
||||
/FieldExpr/gen_field_expr.rs linguist-generated
|
||||
/FnPtrTypeRepr/gen_fn_ptr_type_repr.rs linguist-generated
|
||||
/ForBinder/gen_for_binder.rs linguist-generated
|
||||
/ForExpr/gen_for_expr.rs linguist-generated
|
||||
/ForTypeRepr/gen_for_type_repr.rs linguist-generated
|
||||
/FormatArgsExpr/gen_format.rs linguist-generated
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
# This file is automatically @generated by Cargo.
|
||||
# It is not intended for manual editing.
|
||||
version = 4
|
||||
|
||||
[[package]]
|
||||
name = "test"
|
||||
version = "0.0.1"
|
||||
@@ -1,4 +0,0 @@
|
||||
instances
|
||||
| gen_closure_binder.rs:7:21:7:43 | ClosureBinder |
|
||||
getGenericParamList
|
||||
| gen_closure_binder.rs:7:21:7:43 | ClosureBinder | gen_closure_binder.rs:7:24:7:43 | <...> |
|
||||
@@ -1,9 +0,0 @@
|
||||
// generated by codegen, do not edit
|
||||
import codeql.rust.elements
|
||||
import TestUtils
|
||||
|
||||
query predicate instances(ClosureBinder x) { toBeTested(x) and not x.isUnknown() }
|
||||
|
||||
query predicate getGenericParamList(ClosureBinder x, GenericParamList getGenericParamList) {
|
||||
toBeTested(x) and not x.isUnknown() and getGenericParamList = x.getGenericParamList()
|
||||
}
|
||||
@@ -37,8 +37,8 @@ query predicate getBody(ClosureExpr x, Expr getBody) {
|
||||
toBeTested(x) and not x.isUnknown() and getBody = x.getBody()
|
||||
}
|
||||
|
||||
query predicate getClosureBinder(ClosureExpr x, ClosureBinder getClosureBinder) {
|
||||
toBeTested(x) and not x.isUnknown() and getClosureBinder = x.getClosureBinder()
|
||||
query predicate getForBinder(ClosureExpr x, ForBinder getForBinder) {
|
||||
toBeTested(x) and not x.isUnknown() and getForBinder = x.getForBinder()
|
||||
}
|
||||
|
||||
query predicate getRetType(ClosureExpr x, RetTypeRepr getRetType) {
|
||||
|
||||
9
rust/ql/test/extractor-tests/generated/ForBinder/ForBinder.ql
generated
Normal file
9
rust/ql/test/extractor-tests/generated/ForBinder/ForBinder.ql
generated
Normal file
@@ -0,0 +1,9 @@
|
||||
// generated by codegen, do not edit
|
||||
import codeql.rust.elements
|
||||
import TestUtils
|
||||
|
||||
query predicate instances(ForBinder x) { toBeTested(x) and not x.isUnknown() }
|
||||
|
||||
query predicate getGenericParamList(ForBinder x, GenericParamList getGenericParamList) {
|
||||
toBeTested(x) and not x.isUnknown() and getGenericParamList = x.getGenericParamList()
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
// generated by codegen, do not edit
|
||||
|
||||
fn test_closure_binder() -> () {
|
||||
// A closure binder, specifying lifetime or type parameters for a closure.
|
||||
fn test_for_binder() -> () {
|
||||
// A for binder, specifying lifetime or type parameters for a closure or a type.
|
||||
//
|
||||
// For example:
|
||||
let print_any = for<T: std::fmt::Debug> |x: T| {
|
||||
@@ -4,8 +4,8 @@ import TestUtils
|
||||
|
||||
query predicate instances(ForTypeRepr x) { toBeTested(x) and not x.isUnknown() }
|
||||
|
||||
query predicate getGenericParamList(ForTypeRepr x, GenericParamList getGenericParamList) {
|
||||
toBeTested(x) and not x.isUnknown() and getGenericParamList = x.getGenericParamList()
|
||||
query predicate getForBinder(ForTypeRepr x, ForBinder getForBinder) {
|
||||
toBeTested(x) and not x.isUnknown() and getForBinder = x.getForBinder()
|
||||
}
|
||||
|
||||
query predicate getTypeRepr(ForTypeRepr x, TypeRepr getTypeRepr) {
|
||||
|
||||
@@ -13,6 +13,10 @@ query predicate instances(
|
||||
if x.isConst() then isConst = "yes" else isConst = "no"
|
||||
}
|
||||
|
||||
query predicate getForBinder(TypeBound x, ForBinder getForBinder) {
|
||||
toBeTested(x) and not x.isUnknown() and getForBinder = x.getForBinder()
|
||||
}
|
||||
|
||||
query predicate getLifetime(TypeBound x, Lifetime getLifetime) {
|
||||
toBeTested(x) and not x.isUnknown() and getLifetime = x.getLifetime()
|
||||
}
|
||||
|
||||
@@ -4,8 +4,8 @@ import TestUtils
|
||||
|
||||
query predicate instances(WherePred x) { toBeTested(x) and not x.isUnknown() }
|
||||
|
||||
query predicate getGenericParamList(WherePred x, GenericParamList getGenericParamList) {
|
||||
toBeTested(x) and not x.isUnknown() and getGenericParamList = x.getGenericParamList()
|
||||
query predicate getForBinder(WherePred x, ForBinder getForBinder) {
|
||||
toBeTested(x) and not x.isUnknown() and getForBinder = x.getForBinder()
|
||||
}
|
||||
|
||||
query predicate getLifetime(WherePred x, Lifetime getLifetime) {
|
||||
|
||||
@@ -967,10 +967,10 @@ class _:
|
||||
"""
|
||||
|
||||
|
||||
@annotate(ClosureBinder)
|
||||
@annotate(ForBinder)
|
||||
class _:
|
||||
"""
|
||||
A closure binder, specifying lifetime or type parameters for a closure.
|
||||
A for binder, specifying lifetime or type parameters for a closure or a type.
|
||||
|
||||
For example:
|
||||
```rust
|
||||
|
||||
13
rust/schema/ast.py
generated
13
rust/schema/ast.py
generated
@@ -162,13 +162,10 @@ class CastExpr(Expr, ):
|
||||
expr: optional["Expr"] | child
|
||||
type_repr: optional["TypeRepr"] | child
|
||||
|
||||
class ClosureBinder(AstNode, ):
|
||||
generic_param_list: optional["GenericParamList"] | child
|
||||
|
||||
class ClosureExpr(Expr, ):
|
||||
attrs: list["Attr"] | child
|
||||
body: optional["Expr"] | child
|
||||
closure_binder: optional["ClosureBinder"] | child
|
||||
for_binder: optional["ForBinder"] | child
|
||||
is_async: predicate
|
||||
is_const: predicate
|
||||
is_gen: predicate
|
||||
@@ -265,6 +262,9 @@ class FnPtrTypeRepr(TypeRepr, ):
|
||||
param_list: optional["ParamList"] | child
|
||||
ret_type: optional["RetTypeRepr"] | child
|
||||
|
||||
class ForBinder(AstNode, ):
|
||||
generic_param_list: optional["GenericParamList"] | child
|
||||
|
||||
class ForExpr(Expr, ):
|
||||
attrs: list["Attr"] | child
|
||||
iterable: optional["Expr"] | child
|
||||
@@ -273,7 +273,7 @@ class ForExpr(Expr, ):
|
||||
pat: optional["Pat"] | child
|
||||
|
||||
class ForTypeRepr(TypeRepr, ):
|
||||
generic_param_list: optional["GenericParamList"] | child
|
||||
for_binder: optional["ForBinder"] | child
|
||||
type_repr: optional["TypeRepr"] | child
|
||||
|
||||
class FormatArgsArg(AstNode, ):
|
||||
@@ -697,6 +697,7 @@ class TypeArg(GenericArg, ):
|
||||
type_repr: optional["TypeRepr"] | child
|
||||
|
||||
class TypeBound(AstNode, ):
|
||||
for_binder: optional["ForBinder"] | child
|
||||
is_async: predicate
|
||||
is_const: predicate
|
||||
lifetime: optional["Lifetime"] | child
|
||||
@@ -757,7 +758,7 @@ class WhereClause(AstNode, ):
|
||||
predicates: list["WherePred"] | child
|
||||
|
||||
class WherePred(AstNode, ):
|
||||
generic_param_list: optional["GenericParamList"] | child
|
||||
for_binder: optional["ForBinder"] | child
|
||||
lifetime: optional["Lifetime"] | child
|
||||
type_repr: optional["TypeRepr"] | child
|
||||
type_bound_list: optional["TypeBoundList"] | child
|
||||
|
||||
Reference in New Issue
Block a user