From 41dcb3e8ce9a7fa99976a8258a4d4aa033c1170a Mon Sep 17 00:00:00 2001 From: Tom Hvitved Date: Mon, 12 Jan 2026 10:22:38 +0100 Subject: [PATCH] Rust: Remove `MacroBlockExpr` class --- rust/ast-generator/src/main.rs | 2 - rust/extractor/src/generated/.generated.list | 2 +- rust/extractor/src/generated/top.rs | 63 - rust/extractor/src/translate/base.rs | 19 +- rust/ql/.generated.list | 17 +- rust/ql/.gitattributes | 5 - .../internal/ControlFlowGraphImpl.qll | 11 +- .../internal/generated/CfgNodes.qll | 70 - .../rust/dataflow/internal/DataFlowImpl.qll | 1 - rust/ql/lib/codeql/rust/elements.qll | 1 - .../codeql/rust/elements/MacroBlockExpr.qll | 24 - .../internal/MacroBlockExprConstructor.qll | 14 - .../elements/internal/MacroBlockExprImpl.qll | 30 - .../internal/generated/MacroBlockExpr.qll | 72 - .../internal/generated/ParentChild.qll | 20 - .../rust/elements/internal/generated/Raw.qll | 51 - .../elements/internal/generated/Synth.qll | 27 +- .../internal/generated/SynthConstructors.qll | 1 - .../codeql/rust/internal/PathResolution.qll | 31 +- rust/ql/lib/rust.dbscheme | 18 - .../generated/.generated_tests.list | 1 - .../extractor-tests/generated/.gitattributes | 1 - .../MacroBlockExpr/MacroBlockExpr.ql | 13 - .../MacroBlockExpr/gen_macro_block_expr.rs | 14 - .../generated/MacroCall/MacroCall.expected | 2 +- .../macro-expansion/PrintAst.expected | 3799 +++++++++-------- .../macro-expansion/test.expected | 12 +- .../library-tests/controlflow/Cfg.expected | 40 +- .../dataflow/local/DataFlowStep.expected | 12 +- .../type-inference/type-inference.expected | 458 +- .../test/library-tests/variables/Cfg.expected | 16 +- rust/schema/annotations.py | 22 - 32 files changed, 2496 insertions(+), 2373 deletions(-) delete mode 100644 rust/ql/lib/codeql/rust/elements/MacroBlockExpr.qll delete mode 100644 rust/ql/lib/codeql/rust/elements/internal/MacroBlockExprConstructor.qll delete mode 100644 rust/ql/lib/codeql/rust/elements/internal/MacroBlockExprImpl.qll delete mode 100644 rust/ql/lib/codeql/rust/elements/internal/generated/MacroBlockExpr.qll delete mode 100644 rust/ql/test/extractor-tests/generated/MacroBlockExpr/MacroBlockExpr.ql delete mode 100644 rust/ql/test/extractor-tests/generated/MacroBlockExpr/gen_macro_block_expr.rs diff --git a/rust/ast-generator/src/main.rs b/rust/ast-generator/src/main.rs index ddacc0d913ec..b1de337f3aca 100644 --- a/rust/ast-generator/src/main.rs +++ b/rust/ast-generator/src/main.rs @@ -22,7 +22,6 @@ fn class_name(type_name: &str) -> String { "Literal" => "LiteralExpr".to_owned(), "ArrayExpr" => "ArrayExprInternal".to_owned(), "AsmOptions" => "AsmOptionsList".to_owned(), - "MacroStmts" => "MacroBlockExpr".to_owned(), _ if type_name.starts_with("Record") => type_name.replacen("Record", "Struct", 1), _ if type_name.ends_with("Type") => format!("{type_name}Repr"), _ => type_name.to_owned(), @@ -36,7 +35,6 @@ fn property_name(type_name: &str, field_name: &str) -> String { ("MatchExpr", "expr") => "scrutinee", ("Variant", "expr") => "discriminant", ("FieldExpr", "expr") => "container", - ("MacroBlockExpr", "expr") => "tail_expr", (_, "name_ref") => "identifier", (_, "then_branch") => "then", (_, "else_branch") => "else_", diff --git a/rust/extractor/src/generated/.generated.list b/rust/extractor/src/generated/.generated.list index 11f99621d162..89659a4811dd 100644 --- a/rust/extractor/src/generated/.generated.list +++ b/rust/extractor/src/generated/.generated.list @@ -1,2 +1,2 @@ mod.rs 4bcb9def847469aae9d8649461546b7c21ec97cf6e63d3cf394e339915ce65d7 4bcb9def847469aae9d8649461546b7c21ec97cf6e63d3cf394e339915ce65d7 -top.rs 92ef55101899570ddcb197b872a5b6a38aed874bb8f0ad604af27b2fec00eba5 92ef55101899570ddcb197b872a5b6a38aed874bb8f0ad604af27b2fec00eba5 +top.rs ea9c28694da3d0e90d09fc7d31824e35817c34720ea91e7c8bf8e7e74ffe4ee8 ea9c28694da3d0e90d09fc7d31824e35817c34720ea91e7c8bf8e7e74ffe4ee8 diff --git a/rust/extractor/src/generated/top.rs b/rust/extractor/src/generated/top.rs index 2365084bb828..1c4fd0f00d61 100644 --- a/rust/extractor/src/generated/top.rs +++ b/rust/extractor/src/generated/top.rs @@ -6145,69 +6145,6 @@ impl From> for trap::Label { } } -#[derive(Debug)] -pub struct MacroBlockExpr { - pub id: trap::TrapId, - pub statements: Vec>, - pub tail_expr: Option>, -} - -impl trap::TrapEntry for MacroBlockExpr { - fn extract_id(&mut self) -> trap::TrapId { - std::mem::replace(&mut self.id, trap::TrapId::Star) - } - - fn emit(self, id: trap::Label, out: &mut trap::Writer) { - out.add_tuple("macro_block_exprs", vec![id.into()]); - for (i, v) in self.statements.into_iter().enumerate() { - out.add_tuple("macro_block_expr_statements", vec![id.into(), i.into(), v.into()]); - } - if let Some(v) = self.tail_expr { - out.add_tuple("macro_block_expr_tail_exprs", vec![id.into(), v.into()]); - } - } -} - -impl trap::TrapClass for MacroBlockExpr { - fn class_name() -> &'static str { "MacroBlockExpr" } -} - -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme MacroBlockExpr is a subclass of Expr - unsafe { - Self::from_untyped(value.as_untyped()) - } - } -} - -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme MacroBlockExpr is a subclass of AstNode - unsafe { - Self::from_untyped(value.as_untyped()) - } - } -} - -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme MacroBlockExpr is a subclass of Locatable - unsafe { - Self::from_untyped(value.as_untyped()) - } - } -} - -impl From> for trap::Label { - fn from(value: trap::Label) -> Self { - // SAFETY: this is safe because in the dbscheme MacroBlockExpr is a subclass of Element - unsafe { - Self::from_untyped(value.as_untyped()) - } - } -} - #[derive(Debug)] pub struct MacroExpr { pub id: trap::TrapId, diff --git a/rust/extractor/src/translate/base.rs b/rust/extractor/src/translate/base.rs index a3a0b3c9133b..94d8545bb15f 100644 --- a/rust/extractor/src/translate/base.rs +++ b/rust/extractor/src/translate/base.rs @@ -518,7 +518,7 @@ impl<'a> Translator<'a> { pub(crate) fn emit_macro_stmts( &mut self, node: &ast::MacroStmts, - ) -> Option> { + ) -> Option> { // not generated to work around a bug in rust-analyzer AST generation machinery. // Because an Expr can also be a Stmt (AsmExpr: Expr and AsmExpr: Item: Stmt) // then such an element will be returned by both `expr()` and `statements()` @@ -537,10 +537,23 @@ impl<'a> Translator<'a> { .iter() .filter_map(|x| self.emit_stmt(x)) .collect(); - let label = self.trap.emit(generated::MacroBlockExpr { + let stmt_list = self.trap.emit(generated::StmtList { id: TrapId::Star, - tail_expr, + attrs: vec![], statements, + tail_expr, + }); + let label = self.trap.emit(generated::BlockExpr { + id: TrapId::Star, + label: None, + attrs: vec![], + is_async: false, + is_const: false, + is_gen: false, + is_move: false, + is_try: false, + is_unsafe: false, + stmt_list: Some(stmt_list), }); self.emit_location(label, node); self.emit_tokens(node, label.into(), node.syntax().children_with_tokens()); diff --git a/rust/ql/.generated.list b/rust/ql/.generated.list index de0cdb6224fb..003ede900234 100644 --- a/rust/ql/.generated.list +++ b/rust/ql/.generated.list @@ -1,4 +1,4 @@ -lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll 1eac5a95247dec5cf51a453788b5bdebcf612590014b1e28f6b6f7e841c96a20 d4d8c9664ca406c3fd14d96a488eea97c42401e2791f41d7248ee5d3f299805c +lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll 3f4499c892277e07380232b2c90138d7c312911ef8af4a89ba0c9c2958da028b d8a8b330f8dc43e009c261a41801893230b6b568f503c17faeae9cea54714075 lib/codeql/rust/elements/Abi.qll 485a2e79f6f7bfd1c02a6e795a71e62dede3c3e150149d5f8f18b761253b7208 6159ba175e7ead0dd2e3f2788f49516c306ee11b1a443bd4bdc00b7017d559bd lib/codeql/rust/elements/Addressable.qll 13011bfd2e1556694c3d440cc34af8527da4df49ad92b62f2939d3699ff2cea5 ddb25935f7553a1a384b1abe2e4b4fa90ab50b952dadec32fd867afcb054f4be lib/codeql/rust/elements/ArgList.qll 3d2f6f5542340b80a4c6e944ac17aba0d00727588bb66e501453ac0f80c82f83 afd52700bf5a337f19827846667cd0fb1fea5abbbcbc353828e292a727ea58c9 @@ -88,7 +88,6 @@ lib/codeql/rust/elements/LiteralPat.qll daffb5f380a47543669c8cc92628b0e0de478c3a lib/codeql/rust/elements/Locatable.qll 2855efa4a469b54e0ca85daa89309a8b991cded6f3f10db361010831ba1e11d3 00c3406d14603f90abea11bf074eaf2c0b623a30e29cf6afc3a247cb58b92f0f lib/codeql/rust/elements/LoopExpr.qll ee171177650fa23eef102a9580765f4b6073a1cc41bab1ec31ad4f84ffe6c2c9 bfcf0cca4dc944270d9748a202829a38c64dfae167c0d3a4202788ceb9daf5f6 lib/codeql/rust/elements/LoopingExpr.qll 7ad7d4bbfd05adc0bb9b4ca90ff3377b8298121ca5360ffb45d5a7a1e20fe37a 964168b2045ee9bad827bba53f10a64d649b3513f2d1e3c17a1b1f11d0fc7f3a -lib/codeql/rust/elements/MacroBlockExpr.qll 077c968da099c10456be4b594675a074e9a4e43b5c5145e1b1ae1fa47ae6d570 99586e3766ee0c80364998128e067cab2639ac25c1dcbe13e0247d629490af6f lib/codeql/rust/elements/MacroCall.qll 452aee152b655cdd5a69bf973977072f000a6451f626469a3f7313f0468ffc18 a8652d0de1c6c2118d683d5465ba4115dd4c65031896440269a2a0522d90fceb lib/codeql/rust/elements/MacroDef.qll 5bcf2bba7ba40879fe47370bfeb65b23c67c463be20535327467338a1e2e04bb c3d28416fc08e5d79149fccd388fea2bc3097bce074468a323383056404926db lib/codeql/rust/elements/MacroExpr.qll 640554f4964def19936a16ce88a03fb12f74ec2bcfe38b88d32742b79f85d909 a284fb66e012664a33a4e9c8fd3e38d3ffd588fccd6b16b02270da55fc025f7a @@ -299,8 +298,6 @@ lib/codeql/rust/elements/internal/LiteralExprConstructor.qll 8ea3569bd50704ce7d5 lib/codeql/rust/elements/internal/LiteralPatConstructor.qll b660cb428a0cba0b713fc7b07d5d2921de4a2f65a805535fb6387684c40620de 2dbc9fbc56e9de53d24265d6b13738ef5b9ced33cc3c4c1c270e04dc2fc1330f lib/codeql/rust/elements/internal/LoopExprConstructor.qll 45f3f8f7441fcab6adc58831421679ee07bac68ac0417f3cbc90c97426cc805b f7ab3361b4a11e898126378ea277d76949466946762cd6cb5e9e9b4bb9860420 lib/codeql/rust/elements/internal/LoopingExprImpl.qll 17885c1bcf7b5a3f9c7bbad3d4d55e24372af0dedd5e7fc0efcfc0a8b2cdad70 104dc45ca399b9f6e8227ad561679f728d60170398a52b31fc90cb2a2dd3c33c -lib/codeql/rust/elements/internal/MacroBlockExprConstructor.qll 90097c0d2c94083e997396e01cf24349af5eb1788060368dc21ae8cd8ce90d93 e067904a734356e38fbadbc4277629c5987adce6d8f7737f7458ac07e9b264af -lib/codeql/rust/elements/internal/MacroBlockExprImpl.qll 323c0695ab1d8ee7d88a678eabdb6ac9d92293b9ae0846ec2c7ed8d76a591369 7b662b77cf2d885423d8734ff322c199650c1ea59a2c3371a1370efd7966e0c9 lib/codeql/rust/elements/internal/MacroCallConstructor.qll 707fee4fba1fd632cd00128f493e8919eaaea552ad653af4c1b7a138e362907d b49e7e36bf9306199f2326af042740ff858871b5c79f6aeddf3d5037044dbf1f lib/codeql/rust/elements/internal/MacroDefConstructor.qll 382a3bdf46905d112ee491620cc94f87d584d72f49e01eb1483f749e4709c055 eb61b90d8d8d655c2b00ff576ae20c8da9709eeef754212bc64d8e1558ad05ce lib/codeql/rust/elements/internal/MacroDefImpl.qll 73db95ff82834e0063699c7d31349b65e95ba7436fe0a8914dbdd3a383f8b1c9 cd2f078f84ce73fdc88b207df105b297f2cd3b780428968214443af3a2719e8f @@ -534,7 +531,6 @@ lib/codeql/rust/elements/internal/generated/LiteralPat.qll f36b09cf39330019c111e lib/codeql/rust/elements/internal/generated/Locatable.qll c897dc1bdd4dfcb6ded83a4a93332ca3d8f421bae02493ea2a0555023071775e b32d242f8c9480dc9b53c1e13a5cb8dcfce575b0373991c082c1db460a3e37b8 lib/codeql/rust/elements/internal/generated/LoopExpr.qll db6bc87e795c9852426ec661fa2c2c54106805897408b43a67f5b82fb4657afd 1492866ccf8213469be85bbdbcae0142f4e2a39df305d4c0d664229ecd1ebdb9 lib/codeql/rust/elements/internal/generated/LoopingExpr.qll 0792c38d84b8c68114da2bbdfef32ef803b696cb0fd06e10e101756d5c46976c 111fe961fad512722006323c3f2a075fddf59bd3eb5c7afc349835fcec8eb102 -lib/codeql/rust/elements/internal/generated/MacroBlockExpr.qll 7705de831e797c8742726a3c28dd8f87f6c1b9e2cccd20f01839d161f7ca37c7 ac79c5c95befc82f53b620ccc8a28fd9cc0f9e00c585ed4032bd75f99e0935fa lib/codeql/rust/elements/internal/generated/MacroCall.qll 1a7ee9c782ebc9ab0a807762aabebc9e0a7ef10c6eb945679737598630b20af2 782a437654cb316355c020e89d50b07c93ba7817715fa5d42a9e807cf12d1a43 lib/codeql/rust/elements/internal/generated/MacroDef.qll 90393408d9e10ff6167789367c30f9bfe1d3e8ac3b83871c6cb30a8ae37eef47 f022d1df45bc9546cb9fd7059f20e16a3acfaae2053bbd10075fe467c96e2379 lib/codeql/rust/elements/internal/generated/MacroExpr.qll 5a86ae36a28004ce5e7eb30addf763eef0f1c614466f4507a3935b0dab2c7ce3 11c15e8ebd36455ec9f6b7819134f6b22a15a3644678ca96b911ed0eb1181873 @@ -562,7 +558,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 2a7dd6ec90e4d557b36704a04bb9eb4191469126f960c52827e12c90e51c5343 37781e023a93982be30c9d80aee7c6d87d52cc934705db66f838604563391f95 +lib/codeql/rust/elements/internal/generated/ParentChild.qll b0e3c13b2ca75faaf0d92b2ca3d70cac7b78b3729aaccf635063cc5836c163af a340e8f34a6d7425f38845e789b4aeb83aec90c11429a68ad6632a5aa132fa57 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 @@ -577,7 +573,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 22bb3aa871d1dcac60bfa46393da911f95467065e52bb78981d17469c7854c93 3ccc518319d79f3c8d9e9901a5665ab4c889253781edf76fcbc3de64dff91069 +lib/codeql/rust/elements/internal/generated/Raw.qll 6e32bd7167d3eece2d22f893a92410129b1bd18e59533b1cf82f72f31465b43a bb25c56118df0e2755be2350cf307c19e6c4d85b2a39388c08f2cc1bad303692 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 @@ -602,8 +598,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 00f19e9d0a03b9d8e42caceda06da69d67280be16f67f3459f0adec8f9f8cacd ebcc049fe946540277893bf095787c061cd119c9d4eb708cec9df93257780e8d -lib/codeql/rust/elements/internal/generated/SynthConstructors.qll f41abfc73415b7accb38da7c107faebfe6843c270ad54e0e54a96e930dfe479a f41abfc73415b7accb38da7c107faebfe6843c270ad54e0e54a96e930dfe479a +lib/codeql/rust/elements/internal/generated/Synth.qll 3b9f71b9b6b9952c967e1ba74175b74dd563492d5adc00a27e19ab735bf37918 3ef3e4fe71ab08f772ebd68036cba7b2ec4109d706cfb03747aa05835f376628 +lib/codeql/rust/elements/internal/generated/SynthConstructors.qll ec935bac4f775b64c76cd15ab975d885f544e77bf4833fd0f47acd40438fe66f ec935bac4f775b64c76cd15ab975d885f544e77bf4833fd0f47acd40438fe66f 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 @@ -640,7 +636,7 @@ lib/codeql/rust/elements/internal/generated/WhileExpr.qll 0353aab87c49569e1fbf58 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 47adb2b43274ce791299d1e94299e560f392f75d2cc4d4ace02e29f31a7db4af 47adb2b43274ce791299d1e94299e560f392f75d2cc4d4ace02e29f31a7db4af +lib/codeql/rust/elements.qll be9c7606d429b62fcb8686285e8eeff41f45f0dd22feb5b4fd3ea2f3cdfb39be be9c7606d429b62fcb8686285e8eeff41f45f0dd22feb5b4fd3ea2f3cdfb39be 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 @@ -712,7 +708,6 @@ test/extractor-tests/generated/LifetimeParam/LifetimeParam.ql a96f586af332969878 test/extractor-tests/generated/LiteralExpr/LiteralExpr.ql 00570642966d233a10ec3106ae65e6ea865c29d0776fdbc452815f528301117c adb286ad3bd763f1b1b350cac91bc2615869dcb9b0faf29276ace9a99d31f0cc test/extractor-tests/generated/LiteralPat/LiteralPat.ql 863d4902e7e22de3176398cbb908e6f5f487b3d22c0f9f7a5498a1ebc112c0fd 47e3f70c5c32f17050d3ca8c8b42d94ecd38e378627880d8100b7ca182cfa793 test/extractor-tests/generated/LoopExpr/LoopExpr.ql a178e25f63b4d517482ec63e5dfb6903dd41dadd8db39be2dd2a831e8456811f f34165f78179960cc7e5876dac26a1d0f6f67933eff9a015b92ca0e2872b63e8 -test/extractor-tests/generated/MacroBlockExpr/MacroBlockExpr.ql 936920b5b609b1e62b201004055bbce449d2d7c1f8016f57d9b27d3ea8107f07 21493009ed3b1810aa4fd8af4d8c7b7794982da032dfb6b7e9048445d651eecb test/extractor-tests/generated/MacroCall/MacroCall.ql 28abee68c0681334e4ffd412f1b9b9b0fe844a6ae6c915ec18ea186b4766f58e c8c73902827d69a4b903ab3028408086b64b9f5d9a4da97620a2100f45ceaf69 test/extractor-tests/generated/MacroDef/MacroDef.ql edcdd65706641c2827cac546091a99e0a1473ff8d383efd968023db411591197 b7832c67c6dd32e9e5ecfa4b6256e7cd820f55d49c44458a140cbf4d46542eb3 test/extractor-tests/generated/MacroExpr/MacroExpr.ql 83fadb88fd8f913bb1b1cda26d21b173bdc94bb6682a74eaddce650ebf72aa41 1c502cde6a95ec637e43d348c613be3dec4092b69d2c8692abdc5a9377e37f5f diff --git a/rust/ql/.gitattributes b/rust/ql/.gitattributes index dd6ca829eede..d8004cb5b35e 100644 --- a/rust/ql/.gitattributes +++ b/rust/ql/.gitattributes @@ -90,7 +90,6 @@ /lib/codeql/rust/elements/Locatable.qll linguist-generated /lib/codeql/rust/elements/LoopExpr.qll linguist-generated /lib/codeql/rust/elements/LoopingExpr.qll linguist-generated -/lib/codeql/rust/elements/MacroBlockExpr.qll linguist-generated /lib/codeql/rust/elements/MacroCall.qll linguist-generated /lib/codeql/rust/elements/MacroDef.qll linguist-generated /lib/codeql/rust/elements/MacroExpr.qll linguist-generated @@ -301,8 +300,6 @@ /lib/codeql/rust/elements/internal/LiteralPatConstructor.qll linguist-generated /lib/codeql/rust/elements/internal/LoopExprConstructor.qll linguist-generated /lib/codeql/rust/elements/internal/LoopingExprImpl.qll linguist-generated -/lib/codeql/rust/elements/internal/MacroBlockExprConstructor.qll linguist-generated -/lib/codeql/rust/elements/internal/MacroBlockExprImpl.qll linguist-generated /lib/codeql/rust/elements/internal/MacroCallConstructor.qll linguist-generated /lib/codeql/rust/elements/internal/MacroDefConstructor.qll linguist-generated /lib/codeql/rust/elements/internal/MacroDefImpl.qll linguist-generated @@ -536,7 +533,6 @@ /lib/codeql/rust/elements/internal/generated/Locatable.qll linguist-generated /lib/codeql/rust/elements/internal/generated/LoopExpr.qll linguist-generated /lib/codeql/rust/elements/internal/generated/LoopingExpr.qll linguist-generated -/lib/codeql/rust/elements/internal/generated/MacroBlockExpr.qll linguist-generated /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 @@ -714,7 +710,6 @@ /test/extractor-tests/generated/LiteralExpr/LiteralExpr.ql linguist-generated /test/extractor-tests/generated/LiteralPat/LiteralPat.ql linguist-generated /test/extractor-tests/generated/LoopExpr/LoopExpr.ql linguist-generated -/test/extractor-tests/generated/MacroBlockExpr/MacroBlockExpr.ql linguist-generated /test/extractor-tests/generated/MacroCall/MacroCall.ql linguist-generated /test/extractor-tests/generated/MacroDef/MacroDef.ql linguist-generated /test/extractor-tests/generated/MacroExpr/MacroExpr.ql linguist-generated diff --git a/rust/ql/lib/codeql/rust/controlflow/internal/ControlFlowGraphImpl.qll b/rust/ql/lib/codeql/rust/controlflow/internal/ControlFlowGraphImpl.qll index 522e57417951..16e14ce84a2e 100644 --- a/rust/ql/lib/codeql/rust/controlflow/internal/ControlFlowGraphImpl.qll +++ b/rust/ql/lib/codeql/rust/controlflow/internal/ControlFlowGraphImpl.qll @@ -99,7 +99,7 @@ class FormatTemplateVariableAccessTree extends LeafTree, FormatTemplateVariableA class ItemTree extends LeafTree, Item { ItemTree() { not this instanceof MacroCall and - this = [any(StmtList s).getAStatement(), any(MacroBlockExpr s).getAStatement()] + this = any(StmtList s).getAStatement() } } @@ -140,15 +140,6 @@ class MacroCallTree extends StandardPostOrderTree, MacroCall { override AstNode getChildNode(int i) { i = 0 and result = this.getMacroCallExpansion() } } -class MacroBlockExprTree extends StandardPostOrderTree, MacroBlockExpr { - override AstNode getChildNode(int i) { - result = this.getStatement(i) - or - i = this.getNumberOfStatements() and - result = this.getTailExpr() - } -} - class MatchArmTree extends ControlFlowTree, MatchArm { override predicate propagatesAbnormal(AstNode child) { child = this.getExpr() } diff --git a/rust/ql/lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll b/rust/ql/lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll index 016217e0a460..6aeaa3dd4f4b 100644 --- a/rust/ql/lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll +++ b/rust/ql/lib/codeql/rust/controlflow/internal/generated/CfgNodes.qll @@ -1758,64 +1758,6 @@ module MakeCfgNodes Input> { predicate hasLoopBody() { exists(this.getLoopBody()) } } - final private class ParentMacroBlockExpr extends ParentAstNode, MacroBlockExpr { - override predicate relevantChild(AstNode child) { - none() - or - child = this.getTailExpr() - } - } - - /** - * A sequence of statements generated by a `MacroCall`. For example: - * ```rust - * macro_rules! my_macro { - * () => { - * let mut x = 40; - * x += 2; - * x - * }; - * } - * - * my_macro!(); // this macro expands to a sequence of statements (and an expression) - * ``` - */ - final class MacroBlockExprCfgNode extends CfgNodeFinal, ExprCfgNode { - private MacroBlockExpr node; - - MacroBlockExprCfgNode() { node = this.getAstNode() } - - /** Gets the underlying `MacroBlockExpr`. */ - MacroBlockExpr getMacroBlockExpr() { result = node } - - /** - * Gets the `index`th statement of this macro block expression (0-based). - */ - Stmt getStatement(int index) { result = node.getStatement(index) } - - /** - * Gets any of the statements of this macro block expression. - */ - Stmt getAStatement() { result = this.getStatement(_) } - - /** - * Gets the number of statements of this macro block expression. - */ - int getNumberOfStatements() { result = count(int i | exists(this.getStatement(i))) } - - /** - * Gets the tail expression of this macro block expression, if it exists. - */ - ExprCfgNode getTailExpr() { - any(ChildMapping mapping).hasCfgChild(node, node.getTailExpr(), this, result) - } - - /** - * Holds if `getTailExpr()` exists. - */ - predicate hasTailExpr() { exists(this.getTailExpr()) } - } - final private class ParentMacroCall extends ParentAstNode, MacroCall { override predicate relevantChild(AstNode child) { none() } } @@ -3807,18 +3749,6 @@ module MakeCfgNodes Input> { cfgNode ) or - pred = "getTailExpr" and - parent = - any(Nodes::MacroBlockExprCfgNode cfgNode, MacroBlockExpr astNode | - astNode = cfgNode.getMacroBlockExpr() and - child = getDesugared(astNode.getTailExpr()) and - i = -1 and - hasCfgNode(child) and - not child = cfgNode.getTailExpr().getAstNode() - | - cfgNode - ) - or pred = "getMacroCall" and parent = any(Nodes::MacroExprCfgNode cfgNode, MacroExpr astNode | diff --git a/rust/ql/lib/codeql/rust/dataflow/internal/DataFlowImpl.qll b/rust/ql/lib/codeql/rust/dataflow/internal/DataFlowImpl.qll index c21c053b1734..a0026f6757ea 100644 --- a/rust/ql/lib/codeql/rust/dataflow/internal/DataFlowImpl.qll +++ b/rust/ql/lib/codeql/rust/dataflow/internal/DataFlowImpl.qll @@ -149,7 +149,6 @@ private Expr getALastEvalNode(Expr e) { not be.isAsync() and result = be.getTailExpr() ) or - result = e.(MacroBlockExpr).getTailExpr() or result = e.(MatchExpr).getAnArm().getExpr() or result = e.(MacroExpr).getMacroCall().getMacroCallExpansion() or result.(BreakExpr).getTarget() = e or diff --git a/rust/ql/lib/codeql/rust/elements.qll b/rust/ql/lib/codeql/rust/elements.qll index 1377c543f787..b7ca8fe1ca5c 100644 --- a/rust/ql/lib/codeql/rust/elements.qll +++ b/rust/ql/lib/codeql/rust/elements.qll @@ -93,7 +93,6 @@ import codeql.rust.elements.LiteralPat import codeql.rust.elements.Locatable import codeql.rust.elements.LoopExpr import codeql.rust.elements.LoopingExpr -import codeql.rust.elements.MacroBlockExpr import codeql.rust.elements.MacroCall import codeql.rust.elements.MacroDef import codeql.rust.elements.MacroExpr diff --git a/rust/ql/lib/codeql/rust/elements/MacroBlockExpr.qll b/rust/ql/lib/codeql/rust/elements/MacroBlockExpr.qll deleted file mode 100644 index 0ad76f8a9733..000000000000 --- a/rust/ql/lib/codeql/rust/elements/MacroBlockExpr.qll +++ /dev/null @@ -1,24 +0,0 @@ -// generated by codegen, do not edit -/** - * This module provides the public class `MacroBlockExpr`. - */ - -private import internal.MacroBlockExprImpl -import codeql.rust.elements.Expr -import codeql.rust.elements.Stmt - -/** - * A sequence of statements generated by a `MacroCall`. For example: - * ```rust - * macro_rules! my_macro { - * () => { - * let mut x = 40; - * x += 2; - * x - * }; - * } - * - * my_macro!(); // this macro expands to a sequence of statements (and an expression) - * ``` - */ -final class MacroBlockExpr = Impl::MacroBlockExpr; diff --git a/rust/ql/lib/codeql/rust/elements/internal/MacroBlockExprConstructor.qll b/rust/ql/lib/codeql/rust/elements/internal/MacroBlockExprConstructor.qll deleted file mode 100644 index 0bb4936209a3..000000000000 --- a/rust/ql/lib/codeql/rust/elements/internal/MacroBlockExprConstructor.qll +++ /dev/null @@ -1,14 +0,0 @@ -// 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 - * `MacroBlockExpr` synthesized instances. - * INTERNAL: Do not use. - */ - -private import codeql.rust.elements.internal.generated.Raw - -/** - * The characteristic predicate of `MacroBlockExpr` synthesized instances. - * INTERNAL: Do not use. - */ -predicate constructMacroBlockExpr(Raw::MacroBlockExpr id) { any() } diff --git a/rust/ql/lib/codeql/rust/elements/internal/MacroBlockExprImpl.qll b/rust/ql/lib/codeql/rust/elements/internal/MacroBlockExprImpl.qll deleted file mode 100644 index 289e6c33a307..000000000000 --- a/rust/ql/lib/codeql/rust/elements/internal/MacroBlockExprImpl.qll +++ /dev/null @@ -1,30 +0,0 @@ -// generated by codegen, remove this comment if you wish to edit this file -/** - * This module provides a hand-modifiable wrapper around the generated class `MacroBlockExpr`. - * - * INTERNAL: Do not use. - */ - -private import codeql.rust.elements.internal.generated.MacroBlockExpr - -/** - * INTERNAL: This module contains the customizable definition of `MacroBlockExpr` and should not - * be referenced directly. - */ -module Impl { - /** - * A sequence of statements generated by a `MacroCall`. For example: - * ```rust - * macro_rules! my_macro { - * () => { - * let mut x = 40; - * x += 2; - * x - * }; - * } - * - * my_macro!(); // this macro expands to a sequence of statements (and an expression) - * ``` - */ - class MacroBlockExpr extends Generated::MacroBlockExpr { } -} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/MacroBlockExpr.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/MacroBlockExpr.qll deleted file mode 100644 index e7b94d9f04cc..000000000000 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/MacroBlockExpr.qll +++ /dev/null @@ -1,72 +0,0 @@ -// generated by codegen, do not edit -/** - * This module provides the generated definition of `MacroBlockExpr`. - * 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.Expr -import codeql.rust.elements.internal.ExprImpl::Impl as ExprImpl -import codeql.rust.elements.Stmt - -/** - * INTERNAL: This module contains the fully generated definition of `MacroBlockExpr` and should not - * be referenced directly. - */ -module Generated { - /** - * A sequence of statements generated by a `MacroCall`. For example: - * ```rust - * macro_rules! my_macro { - * () => { - * let mut x = 40; - * x += 2; - * x - * }; - * } - * - * my_macro!(); // this macro expands to a sequence of statements (and an expression) - * ``` - * INTERNAL: Do not reference the `Generated::MacroBlockExpr` class directly. - * Use the subclass `MacroBlockExpr`, where the following predicates are available. - */ - class MacroBlockExpr extends Synth::TMacroBlockExpr, ExprImpl::Expr { - override string getAPrimaryQlClass() { result = "MacroBlockExpr" } - - /** - * Gets the `index`th statement of this macro block expression (0-based). - */ - Stmt getStatement(int index) { - result = - Synth::convertStmtFromRaw(Synth::convertMacroBlockExprToRaw(this) - .(Raw::MacroBlockExpr) - .getStatement(index)) - } - - /** - * Gets any of the statements of this macro block expression. - */ - final Stmt getAStatement() { result = this.getStatement(_) } - - /** - * Gets the number of statements of this macro block expression. - */ - final int getNumberOfStatements() { result = count(int i | exists(this.getStatement(i))) } - - /** - * Gets the tail expression of this macro block expression, if it exists. - */ - Expr getTailExpr() { - result = - Synth::convertExprFromRaw(Synth::convertMacroBlockExprToRaw(this) - .(Raw::MacroBlockExpr) - .getTailExpr()) - } - - /** - * Holds if `getTailExpr()` exists. - */ - final predicate hasTailExpr() { exists(this.getTailExpr()) } - } -} diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/ParentChild.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/ParentChild.qll index 2b51f6146194..c593451b9937 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/ParentChild.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/ParentChild.qll @@ -1505,24 +1505,6 @@ private module Impl { ) } - private Element getImmediateChildOfMacroBlockExpr( - MacroBlockExpr e, int index, string partialPredicateCall - ) { - exists(int n, int nStatement, int nTailExpr | - n = 0 and - nStatement = n + e.getNumberOfStatements() and - nTailExpr = nStatement + 1 and - ( - none() - or - result = e.getStatement(index - n) and - partialPredicateCall = "Statement(" + (index - n).toString() + ")" - or - index = nStatement and result = e.getTailExpr() and partialPredicateCall = "TailExpr()" - ) - ) - } - private Element getImmediateChildOfMacroExpr(MacroExpr e, int index, string partialPredicateCall) { exists(int n, int nMacroCall | n = 0 and @@ -3217,8 +3199,6 @@ private module Impl { or result = getImmediateChildOfLiteralPat(e, index, partialAccessor) or - result = getImmediateChildOfMacroBlockExpr(e, index, partialAccessor) - or result = getImmediateChildOfMacroExpr(e, index, partialAccessor) or result = getImmediateChildOfMacroPat(e, index, partialAccessor) diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/Raw.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/Raw.qll index 5cc81a8777bf..01f54e7ab608 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/Raw.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/Raw.qll @@ -4169,55 +4169,6 @@ module Raw { ) } - /** - * INTERNAL: Do not use. - * A sequence of statements generated by a `MacroCall`. For example: - * ```rust - * macro_rules! my_macro { - * () => { - * let mut x = 40; - * x += 2; - * x - * }; - * } - * - * my_macro!(); // this macro expands to a sequence of statements (and an expression) - * ``` - */ - class MacroBlockExpr extends @macro_block_expr, Expr { - override string toString() { result = "MacroBlockExpr" } - - /** - * Gets the `index`th statement of this macro block expression (0-based). - */ - Stmt getStatement(int index) { macro_block_expr_statements(this, index, result) } - - /** - * Gets the number of statements of this macro block expression. - */ - int getNumberOfStatements() { result = count(int i | macro_block_expr_statements(this, i, _)) } - - /** - * Gets the tail expression of this macro block expression, if it exists. - */ - Expr getTailExpr() { macro_block_expr_tail_exprs(this, result) } - } - - private Element getImmediateChildOfMacroBlockExpr(MacroBlockExpr e, int index) { - exists(int n, int nStatement, int nTailExpr | - n = 0 and - nStatement = n + e.getNumberOfStatements() and - nTailExpr = nStatement + 1 and - ( - none() - or - result = e.getStatement(index - n) - or - index = nStatement and result = e.getTailExpr() - ) - ) - } - /** * INTERNAL: Do not use. * A macro expression, representing the invocation of a macro that produces an expression. @@ -7915,8 +7866,6 @@ module Raw { or result = getImmediateChildOfLiteralPat(e, index) or - result = getImmediateChildOfMacroBlockExpr(e, index) - or result = getImmediateChildOfMacroExpr(e, index) or result = getImmediateChildOfMacroPat(e, index) diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/Synth.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/Synth.qll index 8b22dbbac9dc..eebd86348e0c 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/Synth.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/Synth.qll @@ -318,10 +318,6 @@ module Synth { * INTERNAL: Do not use. */ TLoopExpr(Raw::LoopExpr id) { constructLoopExpr(id) } or - /** - * INTERNAL: Do not use. - */ - TMacroBlockExpr(Raw::MacroBlockExpr id) { constructMacroBlockExpr(id) } or /** * INTERNAL: Do not use. */ @@ -736,9 +732,9 @@ module Synth { TArrayExpr or TArrayExprInternal or TAsmExpr or TAwaitExpr or TBecomeExpr or TBinaryExpr or TBreakExpr or TCallExpr or TCastExpr or TClosureExpr or TContinueExpr or TFieldExpr or TFormatArgsExpr or TIfExpr or TIndexExpr or TLabelableExpr or TLetExpr or TLiteralExpr or - TMacroBlockExpr or TMacroExpr or TMatchExpr or TMethodCallExpr or TOffsetOfExpr or - TParenExpr or TPathExprBase or TPrefixExpr or TRangeExpr or TRefExpr or TReturnExpr or - TStructExpr or TTryExpr or TTupleExpr or TUnderscoreExpr or TYeetExpr or TYieldExpr; + TMacroExpr or TMatchExpr or TMethodCallExpr or TOffsetOfExpr or TParenExpr or + TPathExprBase or TPrefixExpr or TRangeExpr or TRefExpr or TReturnExpr or TStructExpr or + TTryExpr or TTupleExpr or TUnderscoreExpr or TYeetExpr or TYieldExpr; /** * INTERNAL: Do not use. @@ -1377,13 +1373,6 @@ module Synth { */ TLoopExpr convertLoopExprFromRaw(Raw::Element e) { result = TLoopExpr(e) } - /** - * INTERNAL: Do not use. - * - * Converts a raw element to a synthesized `TMacroBlockExpr`, if possible. - */ - TMacroBlockExpr convertMacroBlockExprFromRaw(Raw::Element e) { result = TMacroBlockExpr(e) } - /** * INTERNAL: Do not use. * @@ -2277,8 +2266,6 @@ module Synth { or result = convertLiteralExprFromRaw(e) or - result = convertMacroBlockExprFromRaw(e) - or result = convertMacroExprFromRaw(e) or result = convertMatchExprFromRaw(e) @@ -3036,12 +3023,6 @@ module Synth { */ Raw::Element convertLoopExprToRaw(TLoopExpr e) { e = TLoopExpr(result) } - /** - * INTERNAL: Do not use. - * Converts a synthesized `TMacroBlockExpr` to a raw DB element, if possible. - */ - Raw::Element convertMacroBlockExprToRaw(TMacroBlockExpr e) { e = TMacroBlockExpr(result) } - /** * INTERNAL: Do not use. * Converts a synthesized `TMacroCall` to a raw DB element, if possible. @@ -3845,8 +3826,6 @@ module Synth { or result = convertLiteralExprToRaw(e) or - result = convertMacroBlockExprToRaw(e) - or result = convertMacroExprToRaw(e) or result = convertMatchExprToRaw(e) diff --git a/rust/ql/lib/codeql/rust/elements/internal/generated/SynthConstructors.qll b/rust/ql/lib/codeql/rust/elements/internal/generated/SynthConstructors.qll index d701fa09d769..613af726ba4e 100644 --- a/rust/ql/lib/codeql/rust/elements/internal/generated/SynthConstructors.qll +++ b/rust/ql/lib/codeql/rust/elements/internal/generated/SynthConstructors.qll @@ -77,7 +77,6 @@ import codeql.rust.elements.internal.LifetimeParamConstructor import codeql.rust.elements.internal.LiteralExprConstructor import codeql.rust.elements.internal.LiteralPatConstructor import codeql.rust.elements.internal.LoopExprConstructor -import codeql.rust.elements.internal.MacroBlockExprConstructor import codeql.rust.elements.internal.MacroCallConstructor import codeql.rust.elements.internal.MacroDefConstructor import codeql.rust.elements.internal.MacroExprConstructor diff --git a/rust/ql/lib/codeql/rust/internal/PathResolution.qll b/rust/ql/lib/codeql/rust/internal/PathResolution.qll index e23efc60ee44..f30625807b43 100644 --- a/rust/ql/lib/codeql/rust/internal/PathResolution.qll +++ b/rust/ql/lib/codeql/rust/internal/PathResolution.qll @@ -110,20 +110,18 @@ pragma[nomagic] private ItemNode getAChildSuccessor(ItemNode item, string name, SuccessorKind kind) { item = result.getImmediateParent() and name = result.getName() and - ( - // type parameters are only available inside the declaring item - if result instanceof TypeParam - then kind.isInternal() + // type parameters are only available inside the declaring item + if result instanceof TypeParam + then kind.isInternal() + else + // associated items must always be qualified, also within the declaring + // item (using `Self`) + if item instanceof ImplOrTraitItemNode and result instanceof AssocItem + then kind.isExternal() else - // associated items must always be qualified, also within the declaring - // item (using `Self`) - if item instanceof ImplOrTraitItemNode and result instanceof AssocItem - then kind.isExternal() - else - if result.isPublic() - then kind.isBoth() - else kind.isInternal() - ) + if result.isPublic() + then kind.isBoth() + else kind.isInternal() } private module UseOption = Option; @@ -372,6 +370,13 @@ abstract class ItemNode extends Locatable { result = this.(TypeAliasItemNodeImpl).resolveAliasCand().getASuccessor(name, kind, useOpt) and kind.isExternalOrBoth() or + // items declared at top-level inside macros are also available at the macro invocation sites + exists(BlockExprItemNode be | + this = be.getImmediateParent() and + be = any(MacroCall mc).getMacroCallExpansion() and + result = be.getASuccessor(name, kind, useOpt) + ) + or name = "super" and useOpt.isNone() and ( diff --git a/rust/ql/lib/rust.dbscheme b/rust/ql/lib/rust.dbscheme index c467bf639160..90861289dd4c 100644 --- a/rust/ql/lib/rust.dbscheme +++ b/rust/ql/lib/rust.dbscheme @@ -409,7 +409,6 @@ callable_attrs( | @labelable_expr | @let_expr | @literal_expr -| @macro_block_expr | @macro_expr | @match_expr | @method_call_expr @@ -2036,23 +2035,6 @@ literal_pat_literals( int literal: @literal_expr ref ); -macro_block_exprs( - unique int id: @macro_block_expr -); - -#keyset[id, index] -macro_block_expr_statements( - int id: @macro_block_expr ref, - int index: int ref, - int statement: @stmt ref -); - -#keyset[id] -macro_block_expr_tail_exprs( - int id: @macro_block_expr ref, - int tail_expr: @expr ref -); - macro_exprs( unique int id: @macro_expr ); diff --git a/rust/ql/test/extractor-tests/generated/.generated_tests.list b/rust/ql/test/extractor-tests/generated/.generated_tests.list index a0f338af4207..73e2a1b767d3 100644 --- a/rust/ql/test/extractor-tests/generated/.generated_tests.list +++ b/rust/ql/test/extractor-tests/generated/.generated_tests.list @@ -67,7 +67,6 @@ LifetimeParam/gen_lifetime_param.rs e3f9a417ae7a88a4d81d9cb747b361a3246d270d142f LiteralExpr/gen_literal_expr.rs 2db01ad390e5c0c63a957c043230a462cb4cc25715eea6ede15d43c55d35976d 2db01ad390e5c0c63a957c043230a462cb4cc25715eea6ede15d43c55d35976d LiteralPat/gen_literal_pat.rs a471b481b6989001817a3988696f445d9a4dea784e543c346536dacbee1e96f3 a471b481b6989001817a3988696f445d9a4dea784e543c346536dacbee1e96f3 LoopExpr/gen_loop_expr.rs 35deaf35e765db4ae3124a11284266d8f341d1ce7b700030efada0dda8878619 35deaf35e765db4ae3124a11284266d8f341d1ce7b700030efada0dda8878619 -MacroBlockExpr/gen_macro_block_expr.rs 4284a6e6ad81827d8616a00fec7f5bc21104eed40d93e3acc2b933ee22cb8577 4284a6e6ad81827d8616a00fec7f5bc21104eed40d93e3acc2b933ee22cb8577 MacroCall/gen_macro_call.rs c30added613d9edb3cb1321ae46fc6a088a2f22d2cc979119466ec02f6e09ed6 c30added613d9edb3cb1321ae46fc6a088a2f22d2cc979119466ec02f6e09ed6 MacroDef/gen_macro_def.rs 6f895ecab8c13a73c28ce67fcee39baf7928745a80fb440811014f6d31b22378 6f895ecab8c13a73c28ce67fcee39baf7928745a80fb440811014f6d31b22378 MacroExpr/gen_macro_expr.rs 5e1748356f431eea343a2aad2798c22073151940ea2cda0f0cce78c3d96104f0 5e1748356f431eea343a2aad2798c22073151940ea2cda0f0cce78c3d96104f0 diff --git a/rust/ql/test/extractor-tests/generated/.gitattributes b/rust/ql/test/extractor-tests/generated/.gitattributes index 2679395b34f1..660ad73721ab 100644 --- a/rust/ql/test/extractor-tests/generated/.gitattributes +++ b/rust/ql/test/extractor-tests/generated/.gitattributes @@ -69,7 +69,6 @@ /LiteralExpr/gen_literal_expr.rs linguist-generated /LiteralPat/gen_literal_pat.rs linguist-generated /LoopExpr/gen_loop_expr.rs linguist-generated -/MacroBlockExpr/gen_macro_block_expr.rs linguist-generated /MacroCall/gen_macro_call.rs linguist-generated /MacroDef/gen_macro_def.rs linguist-generated /MacroExpr/gen_macro_expr.rs linguist-generated diff --git a/rust/ql/test/extractor-tests/generated/MacroBlockExpr/MacroBlockExpr.ql b/rust/ql/test/extractor-tests/generated/MacroBlockExpr/MacroBlockExpr.ql deleted file mode 100644 index bae6d7d1f62c..000000000000 --- a/rust/ql/test/extractor-tests/generated/MacroBlockExpr/MacroBlockExpr.ql +++ /dev/null @@ -1,13 +0,0 @@ -// generated by codegen, do not edit -import codeql.rust.elements -import TestUtils - -query predicate instances(MacroBlockExpr x) { toBeTested(x) and not x.isUnknown() } - -query predicate getStatement(MacroBlockExpr x, int index, Stmt getStatement) { - toBeTested(x) and not x.isUnknown() and getStatement = x.getStatement(index) -} - -query predicate getTailExpr(MacroBlockExpr x, Expr getTailExpr) { - toBeTested(x) and not x.isUnknown() and getTailExpr = x.getTailExpr() -} diff --git a/rust/ql/test/extractor-tests/generated/MacroBlockExpr/gen_macro_block_expr.rs b/rust/ql/test/extractor-tests/generated/MacroBlockExpr/gen_macro_block_expr.rs deleted file mode 100644 index 62a408411e8a..000000000000 --- a/rust/ql/test/extractor-tests/generated/MacroBlockExpr/gen_macro_block_expr.rs +++ /dev/null @@ -1,14 +0,0 @@ -// generated by codegen, do not edit - -fn test_macro_block_expr() -> () { - // A sequence of statements generated by a `MacroCall`. For example: - macro_rules! my_macro { - () => { - let mut x = 40; - x += 2; - x - }; - } - - my_macro!(); // this macro expands to a sequence of statements (and an expression) -} diff --git a/rust/ql/test/extractor-tests/generated/MacroCall/MacroCall.expected b/rust/ql/test/extractor-tests/generated/MacroCall/MacroCall.expected index e73178f5a4fb..1f74bc9cc368 100644 --- a/rust/ql/test/extractor-tests/generated/MacroCall/MacroCall.expected +++ b/rust/ql/test/extractor-tests/generated/MacroCall/MacroCall.expected @@ -10,5 +10,5 @@ getTokenTree | gen_macro_call.rs:7:5:7:29 | println!... | gen_macro_call.rs:7:13:7:29 | TokenTree | | gen_macro_call.rs:7:14:7:28 | ...::format_args_nl!... | gen_macro_call.rs:7:14:7:28 | TokenTree | getMacroCallExpansion -| gen_macro_call.rs:7:5:7:29 | println!... | gen_macro_call.rs:7:14:7:28 | MacroBlockExpr | +| gen_macro_call.rs:7:5:7:29 | println!... | gen_macro_call.rs:7:14:7:28 | { ... } | | gen_macro_call.rs:7:14:7:28 | ...::format_args_nl!... | gen_macro_call.rs:7:14:7:28 | FormatArgsExpr | diff --git a/rust/ql/test/extractor-tests/macro-expansion/PrintAst.expected b/rust/ql/test/extractor-tests/macro-expansion/PrintAst.expected index 5d43ff532fd3..6f0b278d062e 100644 --- a/rust/ql/test/extractor-tests/macro-expansion/PrintAst.expected +++ b/rust/ql/test/extractor-tests/macro-expansion/PrintAst.expected @@ -356,41 +356,43 @@ macro_expansion.rs: # 33| getSegment(): [PathSegment] hello # 33| getIdentifier(): [NameRef] hello # 33| getTokenTree(): [TokenTree] TokenTree -# 31| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 31| getStatement(0): [ExprStmt] ExprStmt -# 31| getExpr(): [MacroExpr] MacroExpr -# 31| getMacroCall(): [MacroCall] println!... -# 31| getPath(): [Path] println -# 31| getSegment(): [PathSegment] println -# 31| getIdentifier(): [NameRef] println -# 31| getTokenTree(): [TokenTree] TokenTree -# 31| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 31| getTailExpr(): [BlockExpr] { ... } +# 31| getMacroCallExpansion(): [BlockExpr] { ... } +# 33| getStmtList(): [StmtList] StmtList +# 31| getStatement(0): [ExprStmt] ExprStmt +# 31| getExpr(): [MacroExpr] MacroExpr +# 31| getMacroCall(): [MacroCall] println!... +# 31| getPath(): [Path] println +# 31| getSegment(): [PathSegment] println +# 31| getIdentifier(): [NameRef] println +# 31| getTokenTree(): [TokenTree] TokenTree +# 31| getMacroCallExpansion(): [BlockExpr] { ... } # 31| getStmtList(): [StmtList] StmtList -# 31| getStatement(0): [ExprStmt] ExprStmt -# 31| getExpr(): [CallExpr] ...::_print(...) -# 31| getArgList(): [ArgList] ArgList -# 31| getArg(0): [MacroExpr] MacroExpr -# 31| getMacroCall(): [MacroCall] ...::format_args_nl!... -# 31| getPath(): [Path] ...::format_args_nl -# 31| getQualifier(): [Path] $crate -# 31| getSegment(): [PathSegment] $crate -# 31| getIdentifier(): [NameRef] $crate -# 31| getSegment(): [PathSegment] format_args_nl -# 31| getIdentifier(): [NameRef] format_args_nl -# 31| getTokenTree(): [TokenTree] TokenTree -# 31| getMacroCallExpansion(): [FormatArgsExpr] FormatArgsExpr -# 31| getTemplate(): [StringLiteralExpr] "hello!\n" -# 31| getFunction(): [PathExpr] ...::_print -# 31| getPath(): [Path] ...::_print -# 31| getQualifier(): [Path] ...::io -# 31| getQualifier(): [Path] $crate -# 31| getSegment(): [PathSegment] $crate -# 31| getIdentifier(): [NameRef] $crate -# 31| getSegment(): [PathSegment] io -# 31| getIdentifier(): [NameRef] io -# 31| getSegment(): [PathSegment] _print -# 31| getIdentifier(): [NameRef] _print +# 31| getTailExpr(): [BlockExpr] { ... } +# 31| getStmtList(): [StmtList] StmtList +# 31| getStatement(0): [ExprStmt] ExprStmt +# 31| getExpr(): [CallExpr] ...::_print(...) +# 31| getArgList(): [ArgList] ArgList +# 31| getArg(0): [MacroExpr] MacroExpr +# 31| getMacroCall(): [MacroCall] ...::format_args_nl!... +# 31| getPath(): [Path] ...::format_args_nl +# 31| getQualifier(): [Path] $crate +# 31| getSegment(): [PathSegment] $crate +# 31| getIdentifier(): [NameRef] $crate +# 31| getSegment(): [PathSegment] format_args_nl +# 31| getIdentifier(): [NameRef] format_args_nl +# 31| getTokenTree(): [TokenTree] TokenTree +# 31| getMacroCallExpansion(): [FormatArgsExpr] FormatArgsExpr +# 31| getTemplate(): [StringLiteralExpr] "hello!\n" +# 31| getFunction(): [PathExpr] ...::_print +# 31| getPath(): [Path] ...::_print +# 31| getQualifier(): [Path] ...::io +# 31| getQualifier(): [Path] $crate +# 31| getSegment(): [PathSegment] $crate +# 31| getIdentifier(): [NameRef] $crate +# 31| getSegment(): [PathSegment] io +# 31| getIdentifier(): [NameRef] io +# 31| getSegment(): [PathSegment] _print +# 31| getIdentifier(): [NameRef] _print # 32| getName(): [Name] bzz_0 # 32| getVisibility(): [Visibility] pub # 32| getItem(1): [Function] fn bzz_1 @@ -404,41 +406,43 @@ macro_expansion.rs: # 33| getSegment(): [PathSegment] hello # 33| getIdentifier(): [NameRef] hello # 33| getTokenTree(): [TokenTree] TokenTree -# 31| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 31| getStatement(0): [ExprStmt] ExprStmt -# 31| getExpr(): [MacroExpr] MacroExpr -# 31| getMacroCall(): [MacroCall] println!... -# 31| getPath(): [Path] println -# 31| getSegment(): [PathSegment] println -# 31| getIdentifier(): [NameRef] println -# 31| getTokenTree(): [TokenTree] TokenTree -# 31| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 31| getTailExpr(): [BlockExpr] { ... } +# 31| getMacroCallExpansion(): [BlockExpr] { ... } +# 33| getStmtList(): [StmtList] StmtList +# 31| getStatement(0): [ExprStmt] ExprStmt +# 31| getExpr(): [MacroExpr] MacroExpr +# 31| getMacroCall(): [MacroCall] println!... +# 31| getPath(): [Path] println +# 31| getSegment(): [PathSegment] println +# 31| getIdentifier(): [NameRef] println +# 31| getTokenTree(): [TokenTree] TokenTree +# 31| getMacroCallExpansion(): [BlockExpr] { ... } # 31| getStmtList(): [StmtList] StmtList -# 31| getStatement(0): [ExprStmt] ExprStmt -# 31| getExpr(): [CallExpr] ...::_print(...) -# 31| getArgList(): [ArgList] ArgList -# 31| getArg(0): [MacroExpr] MacroExpr -# 31| getMacroCall(): [MacroCall] ...::format_args_nl!... -# 31| getPath(): [Path] ...::format_args_nl -# 31| getQualifier(): [Path] $crate -# 31| getSegment(): [PathSegment] $crate -# 31| getIdentifier(): [NameRef] $crate -# 31| getSegment(): [PathSegment] format_args_nl -# 31| getIdentifier(): [NameRef] format_args_nl -# 31| getTokenTree(): [TokenTree] TokenTree -# 31| getMacroCallExpansion(): [FormatArgsExpr] FormatArgsExpr -# 31| getTemplate(): [StringLiteralExpr] "hello!\n" -# 31| getFunction(): [PathExpr] ...::_print -# 31| getPath(): [Path] ...::_print -# 31| getQualifier(): [Path] ...::io -# 31| getQualifier(): [Path] $crate -# 31| getSegment(): [PathSegment] $crate -# 31| getIdentifier(): [NameRef] $crate -# 31| getSegment(): [PathSegment] io -# 31| getIdentifier(): [NameRef] io -# 31| getSegment(): [PathSegment] _print -# 31| getIdentifier(): [NameRef] _print +# 31| getTailExpr(): [BlockExpr] { ... } +# 31| getStmtList(): [StmtList] StmtList +# 31| getStatement(0): [ExprStmt] ExprStmt +# 31| getExpr(): [CallExpr] ...::_print(...) +# 31| getArgList(): [ArgList] ArgList +# 31| getArg(0): [MacroExpr] MacroExpr +# 31| getMacroCall(): [MacroCall] ...::format_args_nl!... +# 31| getPath(): [Path] ...::format_args_nl +# 31| getQualifier(): [Path] $crate +# 31| getSegment(): [PathSegment] $crate +# 31| getIdentifier(): [NameRef] $crate +# 31| getSegment(): [PathSegment] format_args_nl +# 31| getIdentifier(): [NameRef] format_args_nl +# 31| getTokenTree(): [TokenTree] TokenTree +# 31| getMacroCallExpansion(): [FormatArgsExpr] FormatArgsExpr +# 31| getTemplate(): [StringLiteralExpr] "hello!\n" +# 31| getFunction(): [PathExpr] ...::_print +# 31| getPath(): [Path] ...::_print +# 31| getQualifier(): [Path] ...::io +# 31| getQualifier(): [Path] $crate +# 31| getSegment(): [PathSegment] $crate +# 31| getIdentifier(): [NameRef] $crate +# 31| getSegment(): [PathSegment] io +# 31| getIdentifier(): [NameRef] io +# 31| getSegment(): [PathSegment] _print +# 31| getIdentifier(): [NameRef] _print # 32| getName(): [Name] bzz_1 # 32| getVisibility(): [Visibility] pub # 32| getItem(2): [Function] fn bzz_2 @@ -452,41 +456,43 @@ macro_expansion.rs: # 33| getSegment(): [PathSegment] hello # 33| getIdentifier(): [NameRef] hello # 33| getTokenTree(): [TokenTree] TokenTree -# 31| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 31| getStatement(0): [ExprStmt] ExprStmt -# 31| getExpr(): [MacroExpr] MacroExpr -# 31| getMacroCall(): [MacroCall] println!... -# 31| getPath(): [Path] println -# 31| getSegment(): [PathSegment] println -# 31| getIdentifier(): [NameRef] println -# 31| getTokenTree(): [TokenTree] TokenTree -# 31| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 31| getTailExpr(): [BlockExpr] { ... } +# 31| getMacroCallExpansion(): [BlockExpr] { ... } +# 33| getStmtList(): [StmtList] StmtList +# 31| getStatement(0): [ExprStmt] ExprStmt +# 31| getExpr(): [MacroExpr] MacroExpr +# 31| getMacroCall(): [MacroCall] println!... +# 31| getPath(): [Path] println +# 31| getSegment(): [PathSegment] println +# 31| getIdentifier(): [NameRef] println +# 31| getTokenTree(): [TokenTree] TokenTree +# 31| getMacroCallExpansion(): [BlockExpr] { ... } # 31| getStmtList(): [StmtList] StmtList -# 31| getStatement(0): [ExprStmt] ExprStmt -# 31| getExpr(): [CallExpr] ...::_print(...) -# 31| getArgList(): [ArgList] ArgList -# 31| getArg(0): [MacroExpr] MacroExpr -# 31| getMacroCall(): [MacroCall] ...::format_args_nl!... -# 31| getPath(): [Path] ...::format_args_nl -# 31| getQualifier(): [Path] $crate -# 31| getSegment(): [PathSegment] $crate -# 31| getIdentifier(): [NameRef] $crate -# 31| getSegment(): [PathSegment] format_args_nl -# 31| getIdentifier(): [NameRef] format_args_nl -# 31| getTokenTree(): [TokenTree] TokenTree -# 31| getMacroCallExpansion(): [FormatArgsExpr] FormatArgsExpr -# 31| getTemplate(): [StringLiteralExpr] "hello!\n" -# 31| getFunction(): [PathExpr] ...::_print -# 31| getPath(): [Path] ...::_print -# 31| getQualifier(): [Path] ...::io -# 31| getQualifier(): [Path] $crate -# 31| getSegment(): [PathSegment] $crate -# 31| getIdentifier(): [NameRef] $crate -# 31| getSegment(): [PathSegment] io -# 31| getIdentifier(): [NameRef] io -# 31| getSegment(): [PathSegment] _print -# 31| getIdentifier(): [NameRef] _print +# 31| getTailExpr(): [BlockExpr] { ... } +# 31| getStmtList(): [StmtList] StmtList +# 31| getStatement(0): [ExprStmt] ExprStmt +# 31| getExpr(): [CallExpr] ...::_print(...) +# 31| getArgList(): [ArgList] ArgList +# 31| getArg(0): [MacroExpr] MacroExpr +# 31| getMacroCall(): [MacroCall] ...::format_args_nl!... +# 31| getPath(): [Path] ...::format_args_nl +# 31| getQualifier(): [Path] $crate +# 31| getSegment(): [PathSegment] $crate +# 31| getIdentifier(): [NameRef] $crate +# 31| getSegment(): [PathSegment] format_args_nl +# 31| getIdentifier(): [NameRef] format_args_nl +# 31| getTokenTree(): [TokenTree] TokenTree +# 31| getMacroCallExpansion(): [FormatArgsExpr] FormatArgsExpr +# 31| getTemplate(): [StringLiteralExpr] "hello!\n" +# 31| getFunction(): [PathExpr] ...::_print +# 31| getPath(): [Path] ...::_print +# 31| getQualifier(): [Path] ...::io +# 31| getQualifier(): [Path] $crate +# 31| getSegment(): [PathSegment] $crate +# 31| getIdentifier(): [NameRef] $crate +# 31| getSegment(): [PathSegment] io +# 31| getIdentifier(): [NameRef] io +# 31| getSegment(): [PathSegment] _print +# 31| getIdentifier(): [NameRef] _print # 32| getName(): [Name] bzz_2 # 32| getVisibility(): [Visibility] pub # 31| getAttr(0): [Attr] Attr @@ -1428,571 +1434,612 @@ proc_macro.rs: # 15| getSegment(): [PathSegment] quote_each_token # 15| getIdentifier(): [NameRef] quote_each_token # 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getTailExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_tokens_with_context!... -# 15| getPath(): [Path] ...::quote_tokens_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_tokens_with_context -# 15| getIdentifier(): [NameRef] quote_tokens_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(0): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(1): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(2): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(3): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getTailExpr(): [BlockExpr] { ... } -# 16| getStmtList(): [StmtList] StmtList -# 15| getStatement(0): [Use] use ...::ext::* -# 15| getUseTree(): [UseTree] ...::ext::* -# 15| getPath(): [Path] ...::ext -# 15| getQualifier(): [Path] ...::__private -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] __private -# 15| getIdentifier(): [NameRef] __private -# 15| getSegment(): [PathSegment] ext -# 15| getIdentifier(): [NameRef] ext -# 15| getStatement(1): [LetStmt] let ... = ...::ThereIsNoIteratorInRepetition -# 15| getInitializer(): [PathExpr] ...::ThereIsNoIteratorInRepetition -# 15| getPath(): [Path] ...::ThereIsNoIteratorInRepetition -# 15| getQualifier(): [Path] ...::__private -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] __private -# 15| getIdentifier(): [NameRef] __private -# 15| getSegment(): [PathSegment] ThereIsNoIteratorInRepetition -# 15| getIdentifier(): [NameRef] ThereIsNoIteratorInRepetition -# 15| getPat(): [IdentPat] has_iter -# 15| getName(): [Name] has_iter -# 16| getStatement(2): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::pounded_var_names!... -# 15| getPath(): [Path] ...::pounded_var_names -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_names -# 15| getIdentifier(): [NameRef] pounded_var_names -# 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getTailExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::pounded_var_names_with_context!... -# 15| getPath(): [Path] ...::pounded_var_names_with_context +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getTailExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_tokens_with_context!... +# 15| getPath(): [Path] ...::quote_tokens_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_tokens_with_context +# 15| getIdentifier(): [NameRef] quote_tokens_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(0): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(1): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(2): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(3): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getTailExpr(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 15| getStatement(0): [Use] use ...::ext::* +# 15| getUseTree(): [UseTree] ...::ext::* +# 15| getPath(): [Path] ...::ext +# 15| getQualifier(): [Path] ...::__private +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] __private +# 15| getIdentifier(): [NameRef] __private +# 15| getSegment(): [PathSegment] ext +# 15| getIdentifier(): [NameRef] ext +# 15| getStatement(1): [LetStmt] let ... = ...::ThereIsNoIteratorInRepetition +# 15| getInitializer(): [PathExpr] ...::ThereIsNoIteratorInRepetition +# 15| getPath(): [Path] ...::ThereIsNoIteratorInRepetition +# 15| getQualifier(): [Path] ...::__private # 15| getQualifier(): [Path] $crate # 15| getSegment(): [PathSegment] $crate # 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_names_with_context -# 15| getIdentifier(): [NameRef] pounded_var_names_with_context +# 15| getSegment(): [PathSegment] __private +# 15| getIdentifier(): [NameRef] __private +# 15| getSegment(): [PathSegment] ThereIsNoIteratorInRepetition +# 15| getIdentifier(): [NameRef] ThereIsNoIteratorInRepetition +# 15| getPat(): [IdentPat] has_iter +# 15| getName(): [Name] has_iter +# 16| getStatement(2): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::pounded_var_names!... +# 15| getPath(): [Path] ...::pounded_var_names +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] pounded_var_names +# 15| getIdentifier(): [NameRef] pounded_var_names # 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 15| getStatement(0): [ExprStmt] ExprStmt -# 15| getExpr(): [MacroExpr] MacroExpr -# 15| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... -# 15| getPath(): [Path] ...::pounded_var_with_context +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getTailExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::pounded_var_names_with_context!... +# 15| getPath(): [Path] ...::pounded_var_names_with_context # 15| getQualifier(): [Path] $crate # 15| getSegment(): [PathSegment] $crate # 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_with_context -# 15| getIdentifier(): [NameRef] pounded_var_with_context -# 15| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 15| getTailExpr(): [MacroExpr] MacroExpr -# 15| getMacroCall(): [MacroCall] ...::pounded_var_names!... -# 15| getPath(): [Path] ...::pounded_var_names -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_names -# 15| getIdentifier(): [NameRef] pounded_var_names -# 15| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 15| getTailExpr(): [MacroExpr] MacroExpr -# 15| getMacroCall(): [MacroCall] ...::pounded_var_names_with_context!... -# 15| getPath(): [Path] ...::pounded_var_names_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_names_with_context -# 15| getIdentifier(): [NameRef] pounded_var_names_with_context -# 15| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr +# 15| getSegment(): [PathSegment] pounded_var_names_with_context +# 15| getIdentifier(): [NameRef] pounded_var_names_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 15| getStatement(0): [ExprStmt] ExprStmt +# 15| getExpr(): [MacroExpr] MacroExpr +# 15| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... +# 15| getPath(): [Path] ...::pounded_var_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] pounded_var_with_context +# 15| getIdentifier(): [NameRef] pounded_var_with_context +# 15| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 15| getStmtList(): [StmtList] StmtList # 15| getTailExpr(): [MacroExpr] MacroExpr -# 15| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... -# 15| getPath(): [Path] ...::pounded_var_with_context +# 15| getMacroCall(): [MacroCall] ...::pounded_var_names!... +# 15| getPath(): [Path] ...::pounded_var_names # 15| getQualifier(): [Path] $crate # 15| getSegment(): [PathSegment] $crate # 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_with_context -# 15| getIdentifier(): [NameRef] pounded_var_with_context +# 15| getSegment(): [PathSegment] pounded_var_names +# 15| getIdentifier(): [NameRef] pounded_var_names # 15| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(1): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... -# 15| getPath(): [Path] ...::pounded_var_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_with_context -# 15| getIdentifier(): [NameRef] pounded_var_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(2): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... -# 15| getPath(): [Path] ...::pounded_var_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_with_context -# 15| getIdentifier(): [NameRef] pounded_var_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(0): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_bind_into_iter!... -# 15| getPath(): [Path] ...::quote_bind_into_iter +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 15| getStmtList(): [StmtList] StmtList +# 15| getTailExpr(): [MacroExpr] MacroExpr +# 15| getMacroCall(): [MacroCall] ...::pounded_var_names_with_context!... +# 15| getPath(): [Path] ...::pounded_var_names_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] pounded_var_names_with_context +# 15| getIdentifier(): [NameRef] pounded_var_names_with_context +# 15| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 15| getStmtList(): [StmtList] StmtList +# 15| getTailExpr(): [MacroExpr] MacroExpr +# 15| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... +# 15| getPath(): [Path] ...::pounded_var_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] pounded_var_with_context +# 15| getIdentifier(): [NameRef] pounded_var_with_context +# 15| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 15| getStmtList(): [StmtList] StmtList +# 16| getStatement(1): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... +# 15| getPath(): [Path] ...::pounded_var_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] pounded_var_with_context +# 15| getIdentifier(): [NameRef] pounded_var_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(2): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... +# 15| getPath(): [Path] ...::pounded_var_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] pounded_var_with_context +# 15| getIdentifier(): [NameRef] pounded_var_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(0): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_bind_into_iter!... +# 15| getPath(): [Path] ...::quote_bind_into_iter +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_bind_into_iter +# 15| getIdentifier(): [NameRef] quote_bind_into_iter +# 16| getTokenTree(): [TokenTree] TokenTree +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(0): [LetStmt] let ... = ... +# 15| getAttr(0): [Attr] Attr +# 15| getMeta(): [Meta] Meta +# 15| getPath(): [Path] allow +# 15| getSegment(): [PathSegment] allow +# 15| getIdentifier(): [NameRef] allow +# 15| getTokenTree(): [TokenTree] TokenTree +# 16| getInitializer(): [MethodCallExpr] items.quote_into_iter() +# 15| getArgList(): [ArgList] ArgList +# 15| getIdentifier(): [NameRef] quote_into_iter +# 16| getReceiver(): [VariableAccess] items +# 16| getPath(): [Path] items +# 16| getSegment(): [PathSegment] items +# 16| getIdentifier(): [NameRef] items +# 16| getPat(): [TuplePat] TuplePat +# 16| getField(0): [IdentPat] mut items +# 16| getName(): [Name] items +# 15| getField(1): [IdentPat] i +# 15| getName(): [Name] i +# 15| getStatement(1): [LetStmt] let ... = ... +# 15| getInitializer(): [BinaryExpr] ... | ... +# 15| getLhs(): [VariableAccess] has_iter +# 15| getPath(): [Path] has_iter +# 15| getSegment(): [PathSegment] has_iter +# 15| getIdentifier(): [NameRef] has_iter +# 15| getRhs(): [VariableAccess] i +# 15| getPath(): [Path] i +# 15| getSegment(): [PathSegment] i +# 15| getIdentifier(): [NameRef] i +# 15| getPat(): [IdentPat] has_iter +# 15| getName(): [Name] has_iter +# 16| getTailExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... +# 15| getPath(): [Path] ...::pounded_var_with_context # 15| getQualifier(): [Path] $crate # 15| getSegment(): [PathSegment] $crate # 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_bind_into_iter -# 15| getIdentifier(): [NameRef] quote_bind_into_iter +# 15| getSegment(): [PathSegment] pounded_var_with_context +# 15| getIdentifier(): [NameRef] pounded_var_with_context # 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(0): [LetStmt] let ... = ... -# 15| getAttr(0): [Attr] Attr -# 15| getMeta(): [Meta] Meta -# 15| getPath(): [Path] allow -# 15| getSegment(): [PathSegment] allow -# 15| getIdentifier(): [NameRef] allow -# 15| getTokenTree(): [TokenTree] TokenTree -# 16| getInitializer(): [MethodCallExpr] items.quote_into_iter() -# 15| getArgList(): [ArgList] ArgList -# 15| getIdentifier(): [NameRef] quote_into_iter -# 16| getReceiver(): [VariableAccess] items -# 16| getPath(): [Path] items -# 16| getSegment(): [PathSegment] items -# 16| getIdentifier(): [NameRef] items -# 16| getPat(): [TuplePat] TuplePat -# 16| getField(0): [IdentPat] mut items -# 16| getName(): [Name] items -# 15| getField(1): [IdentPat] i -# 15| getName(): [Name] i -# 15| getStatement(1): [LetStmt] let ... = ... -# 15| getInitializer(): [BinaryExpr] ... | ... -# 15| getLhs(): [VariableAccess] has_iter -# 15| getPath(): [Path] has_iter -# 15| getSegment(): [PathSegment] has_iter -# 15| getIdentifier(): [NameRef] has_iter -# 15| getRhs(): [VariableAccess] i -# 15| getPath(): [Path] i -# 15| getSegment(): [PathSegment] i -# 15| getIdentifier(): [NameRef] i -# 15| getPat(): [IdentPat] has_iter -# 15| getName(): [Name] has_iter -# 16| getTailExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... -# 15| getPath(): [Path] ...::pounded_var_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_with_context -# 15| getIdentifier(): [NameRef] pounded_var_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 15| getStatement(3): [LetStmt] let _ = has_iter -# 15| getInitializer(): [VariableAccess] has_iter -# 15| getPath(): [Path] has_iter -# 15| getSegment(): [PathSegment] has_iter -# 15| getIdentifier(): [NameRef] has_iter -# 15| getPat(): [WildcardPat] _ -# 15| getTypeRepr(): [PathTypeRepr] ...::HasIterator -# 15| getPath(): [Path] ...::HasIterator -# 15| getQualifier(): [Path] ...::__private -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] __private -# 15| getIdentifier(): [NameRef] __private -# 15| getSegment(): [PathSegment] HasIterator -# 15| getIdentifier(): [NameRef] HasIterator -# 16| getTailExpr(): [WhileExpr] while true { ... } -# 16| getLoopBody(): [BlockExpr] { ... } -# 16| getStmtList(): [StmtList] StmtList -# 16| getStatement(0): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::pounded_var_names!... -# 15| getPath(): [Path] ...::pounded_var_names +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 15| getStatement(3): [LetStmt] let _ = has_iter +# 15| getInitializer(): [VariableAccess] has_iter +# 15| getPath(): [Path] has_iter +# 15| getSegment(): [PathSegment] has_iter +# 15| getIdentifier(): [NameRef] has_iter +# 15| getPat(): [WildcardPat] _ +# 15| getTypeRepr(): [PathTypeRepr] ...::HasIterator +# 15| getPath(): [Path] ...::HasIterator +# 15| getQualifier(): [Path] ...::__private # 15| getQualifier(): [Path] $crate # 15| getSegment(): [PathSegment] $crate # 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_names -# 15| getIdentifier(): [NameRef] pounded_var_names -# 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getTailExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::pounded_var_names_with_context!... -# 15| getPath(): [Path] ...::pounded_var_names_with_context +# 15| getSegment(): [PathSegment] __private +# 15| getIdentifier(): [NameRef] __private +# 15| getSegment(): [PathSegment] HasIterator +# 15| getIdentifier(): [NameRef] HasIterator +# 16| getTailExpr(): [WhileExpr] while true { ... } +# 16| getLoopBody(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(0): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::pounded_var_names!... +# 15| getPath(): [Path] ...::pounded_var_names # 15| getQualifier(): [Path] $crate # 15| getSegment(): [PathSegment] $crate # 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_names_with_context -# 15| getIdentifier(): [NameRef] pounded_var_names_with_context +# 15| getSegment(): [PathSegment] pounded_var_names +# 15| getIdentifier(): [NameRef] pounded_var_names # 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 15| getStatement(0): [ExprStmt] ExprStmt -# 15| getExpr(): [MacroExpr] MacroExpr -# 15| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... -# 15| getPath(): [Path] ...::pounded_var_with_context +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getTailExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::pounded_var_names_with_context!... +# 15| getPath(): [Path] ...::pounded_var_names_with_context # 15| getQualifier(): [Path] $crate # 15| getSegment(): [PathSegment] $crate # 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_with_context -# 15| getIdentifier(): [NameRef] pounded_var_with_context -# 15| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 15| getTailExpr(): [MacroExpr] MacroExpr -# 15| getMacroCall(): [MacroCall] ...::pounded_var_names!... -# 15| getPath(): [Path] ...::pounded_var_names -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_names -# 15| getIdentifier(): [NameRef] pounded_var_names -# 15| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 15| getTailExpr(): [MacroExpr] MacroExpr -# 15| getMacroCall(): [MacroCall] ...::pounded_var_names_with_context!... -# 15| getPath(): [Path] ...::pounded_var_names_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_names_with_context -# 15| getIdentifier(): [NameRef] pounded_var_names_with_context -# 15| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr +# 15| getSegment(): [PathSegment] pounded_var_names_with_context +# 15| getIdentifier(): [NameRef] pounded_var_names_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 15| getStatement(0): [ExprStmt] ExprStmt +# 15| getExpr(): [MacroExpr] MacroExpr +# 15| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... +# 15| getPath(): [Path] ...::pounded_var_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] pounded_var_with_context +# 15| getIdentifier(): [NameRef] pounded_var_with_context +# 15| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 15| getStmtList(): [StmtList] StmtList # 15| getTailExpr(): [MacroExpr] MacroExpr -# 15| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... -# 15| getPath(): [Path] ...::pounded_var_with_context +# 15| getMacroCall(): [MacroCall] ...::pounded_var_names!... +# 15| getPath(): [Path] ...::pounded_var_names # 15| getQualifier(): [Path] $crate # 15| getSegment(): [PathSegment] $crate # 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_with_context -# 15| getIdentifier(): [NameRef] pounded_var_with_context +# 15| getSegment(): [PathSegment] pounded_var_names +# 15| getIdentifier(): [NameRef] pounded_var_names # 15| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(1): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... -# 15| getPath(): [Path] ...::pounded_var_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_with_context -# 15| getIdentifier(): [NameRef] pounded_var_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(2): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... -# 15| getPath(): [Path] ...::pounded_var_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_with_context -# 15| getIdentifier(): [NameRef] pounded_var_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(0): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_bind_next_or_break!... -# 15| getPath(): [Path] ...::quote_bind_next_or_break +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 15| getStmtList(): [StmtList] StmtList +# 15| getTailExpr(): [MacroExpr] MacroExpr +# 15| getMacroCall(): [MacroCall] ...::pounded_var_names_with_context!... +# 15| getPath(): [Path] ...::pounded_var_names_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] pounded_var_names_with_context +# 15| getIdentifier(): [NameRef] pounded_var_names_with_context +# 15| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 15| getStmtList(): [StmtList] StmtList +# 15| getTailExpr(): [MacroExpr] MacroExpr +# 15| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... +# 15| getPath(): [Path] ...::pounded_var_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] pounded_var_with_context +# 15| getIdentifier(): [NameRef] pounded_var_with_context +# 15| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 15| getStmtList(): [StmtList] StmtList +# 16| getStatement(1): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... +# 15| getPath(): [Path] ...::pounded_var_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] pounded_var_with_context +# 15| getIdentifier(): [NameRef] pounded_var_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(2): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... +# 15| getPath(): [Path] ...::pounded_var_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] pounded_var_with_context +# 15| getIdentifier(): [NameRef] pounded_var_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(0): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_bind_next_or_break!... +# 15| getPath(): [Path] ...::quote_bind_next_or_break +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_bind_next_or_break +# 15| getIdentifier(): [NameRef] quote_bind_next_or_break +# 16| getTokenTree(): [TokenTree] TokenTree +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(0): [LetStmt] let ... = ... +# 16| getInitializer(): [MatchExpr] match ... { ... } +# 16| getScrutinee(): [MethodCallExpr] items.next() +# 15| getArgList(): [ArgList] ArgList +# 15| getIdentifier(): [NameRef] next +# 16| getReceiver(): [VariableAccess] items +# 16| getPath(): [Path] items +# 16| getSegment(): [PathSegment] items +# 16| getIdentifier(): [NameRef] items +# 15| getMatchArmList(): [MatchArmList] MatchArmList +# 15| getArm(0): [MatchArm] ... => ... +# 15| getExpr(): [TupleStructExpr] ...::RepInterp(...) +# 15| getArgList(): [ArgList] ArgList +# 15| getArg(0): [VariableAccess] _x +# 15| getPath(): [Path] _x +# 15| getSegment(): [PathSegment] _x +# 15| getIdentifier(): [NameRef] _x +# 15| getFunction(): [PathExpr] ...::RepInterp +# 15| getPath(): [Path] ...::RepInterp +# 15| getQualifier(): [Path] ...::__private +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] __private +# 15| getIdentifier(): [NameRef] __private +# 15| getSegment(): [PathSegment] RepInterp +# 15| getIdentifier(): [NameRef] RepInterp +# 15| getPat(): [TupleStructPat] Some(...) +# 15| getPath(): [Path] Some +# 15| getSegment(): [PathSegment] Some +# 15| getIdentifier(): [NameRef] Some +# 15| getField(0): [IdentPat] _x +# 15| getName(): [Name] _x +# 15| getArm(1): [MatchArm] ... => ... +# 15| getExpr(): [BreakExpr] break +# 15| getPat(): [IdentPat] None +# 15| getName(): [Name] None +# 16| getPat(): [IdentPat] items +# 16| getName(): [Name] items +# 16| getTailExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... +# 15| getPath(): [Path] ...::pounded_var_with_context # 15| getQualifier(): [Path] $crate # 15| getSegment(): [PathSegment] $crate # 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_bind_next_or_break -# 15| getIdentifier(): [NameRef] quote_bind_next_or_break +# 15| getSegment(): [PathSegment] pounded_var_with_context +# 15| getIdentifier(): [NameRef] pounded_var_with_context # 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(0): [LetStmt] let ... = ... -# 16| getInitializer(): [MatchExpr] match ... { ... } -# 16| getScrutinee(): [MethodCallExpr] items.next() -# 15| getArgList(): [ArgList] ArgList -# 15| getIdentifier(): [NameRef] next -# 16| getReceiver(): [VariableAccess] items -# 16| getPath(): [Path] items -# 16| getSegment(): [PathSegment] items -# 16| getIdentifier(): [NameRef] items -# 15| getMatchArmList(): [MatchArmList] MatchArmList -# 15| getArm(0): [MatchArm] ... => ... -# 15| getExpr(): [TupleStructExpr] ...::RepInterp(...) -# 15| getArgList(): [ArgList] ArgList -# 15| getArg(0): [VariableAccess] _x -# 15| getPath(): [Path] _x -# 15| getSegment(): [PathSegment] _x -# 15| getIdentifier(): [NameRef] _x -# 15| getFunction(): [PathExpr] ...::RepInterp -# 15| getPath(): [Path] ...::RepInterp -# 15| getQualifier(): [Path] ...::__private -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] __private -# 15| getIdentifier(): [NameRef] __private -# 15| getSegment(): [PathSegment] RepInterp -# 15| getIdentifier(): [NameRef] RepInterp -# 15| getPat(): [TupleStructPat] Some(...) -# 15| getPath(): [Path] Some -# 15| getSegment(): [PathSegment] Some -# 15| getIdentifier(): [NameRef] Some -# 15| getField(0): [IdentPat] _x -# 15| getName(): [Name] _x -# 15| getArm(1): [MatchArm] ... => ... -# 15| getExpr(): [BreakExpr] break -# 15| getPat(): [IdentPat] None -# 15| getName(): [Name] None -# 16| getPat(): [IdentPat] items -# 16| getName(): [Name] items -# 16| getTailExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::pounded_var_with_context!... -# 15| getPath(): [Path] ...::pounded_var_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] pounded_var_with_context -# 15| getIdentifier(): [NameRef] pounded_var_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getTailExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_each_token!... -# 15| getPath(): [Path] ...::quote_each_token -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_each_token -# 15| getIdentifier(): [NameRef] quote_each_token -# 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList # 16| getTailExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_tokens_with_context!... -# 15| getPath(): [Path] ...::quote_tokens_with_context +# 16| getMacroCall(): [MacroCall] ...::quote_each_token!... +# 15| getPath(): [Path] ...::quote_each_token # 15| getQualifier(): [Path] $crate # 15| getSegment(): [PathSegment] $crate # 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_tokens_with_context -# 15| getIdentifier(): [NameRef] quote_tokens_with_context +# 15| getSegment(): [PathSegment] quote_each_token +# 15| getIdentifier(): [NameRef] quote_each_token # 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(0): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(1): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(2): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(3): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getTailExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_tokens_with_context!... +# 15| getPath(): [Path] ...::quote_tokens_with_context # 15| getQualifier(): [Path] $crate # 15| getSegment(): [PathSegment] $crate # 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context +# 15| getSegment(): [PathSegment] quote_tokens_with_context +# 15| getIdentifier(): [NameRef] quote_tokens_with_context # 16| getTokenTree(): [TokenTree] TokenTree -# 16| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(0): [ExprStmt] ExprStmt -# 16| getExpr(): [CallExpr] ...::to_tokens(...) -# 16| getArgList(): [ArgList] ArgList -# 16| getArg(0): [RefExpr] &items -# 16| getExpr(): [VariableAccess] items -# 16| getPath(): [Path] items -# 16| getSegment(): [PathSegment] items -# 16| getIdentifier(): [NameRef] items -# 15| getArg(1): [RefExpr] &mut _s -# 15| getExpr(): [VariableAccess] _s -# 15| getPath(): [Path] _s -# 15| getSegment(): [PathSegment] _s -# 15| getIdentifier(): [NameRef] _s -# 15| getFunction(): [PathExpr] ...::to_tokens -# 15| getPath(): [Path] ...::to_tokens -# 15| getQualifier(): [Path] ...::ToTokens +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(0): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context # 15| getQualifier(): [Path] $crate # 15| getSegment(): [PathSegment] $crate # 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] ToTokens -# 15| getIdentifier(): [NameRef] ToTokens -# 15| getSegment(): [PathSegment] to_tokens -# 15| getIdentifier(): [NameRef] to_tokens -# 16| getStatement(4): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(5): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(6): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getTailExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 15| getCondition(): [BooleanLiteralExpr] true -# 16| getStatement(4): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(5): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(6): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getStatement(7): [ExprStmt] ExprStmt -# 16| getExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 16| getTailExpr(): [MacroExpr] MacroExpr -# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 15| getPath(): [Path] ...::quote_token_with_context -# 15| getQualifier(): [Path] $crate -# 15| getSegment(): [PathSegment] $crate -# 15| getIdentifier(): [NameRef] $crate -# 15| getSegment(): [PathSegment] quote_token_with_context -# 15| getIdentifier(): [NameRef] quote_token_with_context -# 16| getTokenTree(): [TokenTree] TokenTree -# 15| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(1): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(2): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(3): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 16| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(0): [ExprStmt] ExprStmt +# 16| getExpr(): [CallExpr] ...::to_tokens(...) +# 16| getArgList(): [ArgList] ArgList +# 16| getArg(0): [RefExpr] &items +# 16| getExpr(): [VariableAccess] items +# 16| getPath(): [Path] items +# 16| getSegment(): [PathSegment] items +# 16| getIdentifier(): [NameRef] items +# 15| getArg(1): [RefExpr] &mut _s +# 15| getExpr(): [VariableAccess] _s +# 15| getPath(): [Path] _s +# 15| getSegment(): [PathSegment] _s +# 15| getIdentifier(): [NameRef] _s +# 15| getFunction(): [PathExpr] ...::to_tokens +# 15| getPath(): [Path] ...::to_tokens +# 15| getQualifier(): [Path] ...::ToTokens +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] ToTokens +# 15| getIdentifier(): [NameRef] ToTokens +# 15| getSegment(): [PathSegment] to_tokens +# 15| getIdentifier(): [NameRef] to_tokens +# 16| getStatement(4): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(5): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(6): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getTailExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 15| getCondition(): [BooleanLiteralExpr] true +# 16| getStatement(4): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(5): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(6): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getStatement(7): [ExprStmt] ExprStmt +# 16| getExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList +# 16| getTailExpr(): [MacroExpr] MacroExpr +# 16| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 15| getPath(): [Path] ...::quote_token_with_context +# 15| getQualifier(): [Path] $crate +# 15| getSegment(): [PathSegment] $crate +# 15| getIdentifier(): [NameRef] $crate +# 15| getSegment(): [PathSegment] quote_token_with_context +# 15| getIdentifier(): [NameRef] quote_token_with_context +# 16| getTokenTree(): [TokenTree] TokenTree +# 15| getMacroCallExpansion(): [BlockExpr] { ... } +# 16| getStmtList(): [StmtList] StmtList # 15| getTailExpr(): [VariableAccess] _s # 15| getPath(): [Path] _s # 15| getSegment(): [PathSegment] _s @@ -2258,172 +2305,184 @@ proc_macro.rs: # 25| getSegment(): [PathSegment] quote_each_token # 25| getIdentifier(): [NameRef] quote_each_token # 26| getTokenTree(): [TokenTree] TokenTree -# 26| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 26| getTailExpr(): [MacroExpr] MacroExpr -# 26| getMacroCall(): [MacroCall] ...::quote_tokens_with_context!... -# 25| getPath(): [Path] ...::quote_tokens_with_context -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] quote_tokens_with_context -# 25| getIdentifier(): [NameRef] quote_tokens_with_context -# 26| getTokenTree(): [TokenTree] TokenTree -# 26| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 26| getStatement(0): [ExprStmt] ExprStmt -# 26| getExpr(): [MacroExpr] MacroExpr -# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 25| getPath(): [Path] ...::quote_token_with_context -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] quote_token_with_context -# 25| getIdentifier(): [NameRef] quote_token_with_context -# 26| getTokenTree(): [TokenTree] TokenTree -# 25| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 26| getStatement(1): [ExprStmt] ExprStmt -# 26| getExpr(): [MacroExpr] MacroExpr -# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 25| getPath(): [Path] ...::quote_token_with_context -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] quote_token_with_context -# 25| getIdentifier(): [NameRef] quote_token_with_context -# 26| getTokenTree(): [TokenTree] TokenTree -# 25| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 26| getStatement(2): [ExprStmt] ExprStmt -# 26| getExpr(): [MacroExpr] MacroExpr -# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 25| getPath(): [Path] ...::quote_token_with_context -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] quote_token_with_context -# 25| getIdentifier(): [NameRef] quote_token_with_context -# 26| getTokenTree(): [TokenTree] TokenTree -# 25| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 26| getStatement(3): [ExprStmt] ExprStmt -# 26| getExpr(): [MacroExpr] MacroExpr -# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 25| getPath(): [Path] ...::quote_token_with_context -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] quote_token_with_context -# 25| getIdentifier(): [NameRef] quote_token_with_context -# 26| getTokenTree(): [TokenTree] TokenTree -# 26| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 26| getStatement(0): [ExprStmt] ExprStmt -# 26| getExpr(): [CallExpr] ...::to_tokens(...) -# 26| getArgList(): [ArgList] ArgList -# 26| getArg(0): [RefExpr] &ast -# 26| getExpr(): [VariableAccess] ast -# 26| getPath(): [Path] ast -# 26| getSegment(): [PathSegment] ast -# 26| getIdentifier(): [NameRef] ast -# 25| getArg(1): [RefExpr] &mut _s -# 25| getExpr(): [VariableAccess] _s -# 25| getPath(): [Path] _s -# 25| getSegment(): [PathSegment] _s -# 25| getIdentifier(): [NameRef] _s -# 25| getFunction(): [PathExpr] ...::to_tokens -# 25| getPath(): [Path] ...::to_tokens -# 25| getQualifier(): [Path] ...::ToTokens -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] ToTokens -# 25| getIdentifier(): [NameRef] ToTokens -# 25| getSegment(): [PathSegment] to_tokens -# 25| getIdentifier(): [NameRef] to_tokens -# 26| getStatement(4): [ExprStmt] ExprStmt -# 26| getExpr(): [MacroExpr] MacroExpr -# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 25| getPath(): [Path] ...::quote_token_with_context -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] quote_token_with_context -# 25| getIdentifier(): [NameRef] quote_token_with_context -# 26| getTokenTree(): [TokenTree] TokenTree -# 25| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 26| getStatement(5): [ExprStmt] ExprStmt -# 26| getExpr(): [MacroExpr] MacroExpr -# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 25| getPath(): [Path] ...::quote_token_with_context -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] quote_token_with_context -# 25| getIdentifier(): [NameRef] quote_token_with_context -# 26| getTokenTree(): [TokenTree] TokenTree -# 27| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 27| getStatement(0): [ExprStmt] ExprStmt -# 27| getExpr(): [CallExpr] ...::to_tokens(...) -# 27| getArgList(): [ArgList] ArgList -# 27| getArg(0): [RefExpr] &new_ast -# 27| getExpr(): [VariableAccess] new_ast -# 27| getPath(): [Path] new_ast -# 27| getSegment(): [PathSegment] new_ast -# 27| getIdentifier(): [NameRef] new_ast -# 25| getArg(1): [RefExpr] &mut _s -# 25| getExpr(): [VariableAccess] _s -# 25| getPath(): [Path] _s -# 25| getSegment(): [PathSegment] _s -# 25| getIdentifier(): [NameRef] _s -# 25| getFunction(): [PathExpr] ...::to_tokens -# 25| getPath(): [Path] ...::to_tokens -# 25| getQualifier(): [Path] ...::ToTokens -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] ToTokens -# 25| getIdentifier(): [NameRef] ToTokens -# 25| getSegment(): [PathSegment] to_tokens -# 25| getIdentifier(): [NameRef] to_tokens -# 26| getStatement(6): [ExprStmt] ExprStmt -# 26| getExpr(): [MacroExpr] MacroExpr -# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 25| getPath(): [Path] ...::quote_token_with_context -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] quote_token_with_context -# 25| getIdentifier(): [NameRef] quote_token_with_context -# 26| getTokenTree(): [TokenTree] TokenTree -# 25| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 26| getStatement(7): [ExprStmt] ExprStmt -# 26| getExpr(): [MacroExpr] MacroExpr -# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 25| getPath(): [Path] ...::quote_token_with_context -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] quote_token_with_context -# 25| getIdentifier(): [NameRef] quote_token_with_context -# 26| getTokenTree(): [TokenTree] TokenTree -# 25| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 27| getStatement(8): [ExprStmt] ExprStmt -# 27| getExpr(): [MacroExpr] MacroExpr -# 27| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 25| getPath(): [Path] ...::quote_token_with_context -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] quote_token_with_context -# 25| getIdentifier(): [NameRef] quote_token_with_context -# 27| getTokenTree(): [TokenTree] TokenTree -# 25| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 27| getTailExpr(): [MacroExpr] MacroExpr -# 27| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 25| getPath(): [Path] ...::quote_token_with_context -# 25| getQualifier(): [Path] $crate -# 25| getSegment(): [PathSegment] $crate -# 25| getIdentifier(): [NameRef] $crate -# 25| getSegment(): [PathSegment] quote_token_with_context -# 25| getIdentifier(): [NameRef] quote_token_with_context -# 27| getTokenTree(): [TokenTree] TokenTree -# 25| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr +# 26| getMacroCallExpansion(): [BlockExpr] { ... } +# 26| getStmtList(): [StmtList] StmtList +# 26| getTailExpr(): [MacroExpr] MacroExpr +# 26| getMacroCall(): [MacroCall] ...::quote_tokens_with_context!... +# 25| getPath(): [Path] ...::quote_tokens_with_context +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] quote_tokens_with_context +# 25| getIdentifier(): [NameRef] quote_tokens_with_context +# 26| getTokenTree(): [TokenTree] TokenTree +# 26| getMacroCallExpansion(): [BlockExpr] { ... } +# 26| getStmtList(): [StmtList] StmtList +# 26| getStatement(0): [ExprStmt] ExprStmt +# 26| getExpr(): [MacroExpr] MacroExpr +# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 25| getPath(): [Path] ...::quote_token_with_context +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] quote_token_with_context +# 25| getIdentifier(): [NameRef] quote_token_with_context +# 26| getTokenTree(): [TokenTree] TokenTree +# 25| getMacroCallExpansion(): [BlockExpr] { ... } +# 26| getStmtList(): [StmtList] StmtList +# 26| getStatement(1): [ExprStmt] ExprStmt +# 26| getExpr(): [MacroExpr] MacroExpr +# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 25| getPath(): [Path] ...::quote_token_with_context +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] quote_token_with_context +# 25| getIdentifier(): [NameRef] quote_token_with_context +# 26| getTokenTree(): [TokenTree] TokenTree +# 25| getMacroCallExpansion(): [BlockExpr] { ... } +# 26| getStmtList(): [StmtList] StmtList +# 26| getStatement(2): [ExprStmt] ExprStmt +# 26| getExpr(): [MacroExpr] MacroExpr +# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 25| getPath(): [Path] ...::quote_token_with_context +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] quote_token_with_context +# 25| getIdentifier(): [NameRef] quote_token_with_context +# 26| getTokenTree(): [TokenTree] TokenTree +# 25| getMacroCallExpansion(): [BlockExpr] { ... } +# 26| getStmtList(): [StmtList] StmtList +# 26| getStatement(3): [ExprStmt] ExprStmt +# 26| getExpr(): [MacroExpr] MacroExpr +# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 25| getPath(): [Path] ...::quote_token_with_context +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] quote_token_with_context +# 25| getIdentifier(): [NameRef] quote_token_with_context +# 26| getTokenTree(): [TokenTree] TokenTree +# 26| getMacroCallExpansion(): [BlockExpr] { ... } +# 26| getStmtList(): [StmtList] StmtList +# 26| getStatement(0): [ExprStmt] ExprStmt +# 26| getExpr(): [CallExpr] ...::to_tokens(...) +# 26| getArgList(): [ArgList] ArgList +# 26| getArg(0): [RefExpr] &ast +# 26| getExpr(): [VariableAccess] ast +# 26| getPath(): [Path] ast +# 26| getSegment(): [PathSegment] ast +# 26| getIdentifier(): [NameRef] ast +# 25| getArg(1): [RefExpr] &mut _s +# 25| getExpr(): [VariableAccess] _s +# 25| getPath(): [Path] _s +# 25| getSegment(): [PathSegment] _s +# 25| getIdentifier(): [NameRef] _s +# 25| getFunction(): [PathExpr] ...::to_tokens +# 25| getPath(): [Path] ...::to_tokens +# 25| getQualifier(): [Path] ...::ToTokens +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] ToTokens +# 25| getIdentifier(): [NameRef] ToTokens +# 25| getSegment(): [PathSegment] to_tokens +# 25| getIdentifier(): [NameRef] to_tokens +# 26| getStatement(4): [ExprStmt] ExprStmt +# 26| getExpr(): [MacroExpr] MacroExpr +# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 25| getPath(): [Path] ...::quote_token_with_context +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] quote_token_with_context +# 25| getIdentifier(): [NameRef] quote_token_with_context +# 26| getTokenTree(): [TokenTree] TokenTree +# 25| getMacroCallExpansion(): [BlockExpr] { ... } +# 26| getStmtList(): [StmtList] StmtList +# 26| getStatement(5): [ExprStmt] ExprStmt +# 26| getExpr(): [MacroExpr] MacroExpr +# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 25| getPath(): [Path] ...::quote_token_with_context +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] quote_token_with_context +# 25| getIdentifier(): [NameRef] quote_token_with_context +# 26| getTokenTree(): [TokenTree] TokenTree +# 27| getMacroCallExpansion(): [BlockExpr] { ... } +# 26| getStmtList(): [StmtList] StmtList +# 27| getStatement(0): [ExprStmt] ExprStmt +# 27| getExpr(): [CallExpr] ...::to_tokens(...) +# 27| getArgList(): [ArgList] ArgList +# 27| getArg(0): [RefExpr] &new_ast +# 27| getExpr(): [VariableAccess] new_ast +# 27| getPath(): [Path] new_ast +# 27| getSegment(): [PathSegment] new_ast +# 27| getIdentifier(): [NameRef] new_ast +# 25| getArg(1): [RefExpr] &mut _s +# 25| getExpr(): [VariableAccess] _s +# 25| getPath(): [Path] _s +# 25| getSegment(): [PathSegment] _s +# 25| getIdentifier(): [NameRef] _s +# 25| getFunction(): [PathExpr] ...::to_tokens +# 25| getPath(): [Path] ...::to_tokens +# 25| getQualifier(): [Path] ...::ToTokens +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] ToTokens +# 25| getIdentifier(): [NameRef] ToTokens +# 25| getSegment(): [PathSegment] to_tokens +# 25| getIdentifier(): [NameRef] to_tokens +# 26| getStatement(6): [ExprStmt] ExprStmt +# 26| getExpr(): [MacroExpr] MacroExpr +# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 25| getPath(): [Path] ...::quote_token_with_context +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] quote_token_with_context +# 25| getIdentifier(): [NameRef] quote_token_with_context +# 26| getTokenTree(): [TokenTree] TokenTree +# 25| getMacroCallExpansion(): [BlockExpr] { ... } +# 26| getStmtList(): [StmtList] StmtList +# 26| getStatement(7): [ExprStmt] ExprStmt +# 26| getExpr(): [MacroExpr] MacroExpr +# 26| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 25| getPath(): [Path] ...::quote_token_with_context +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] quote_token_with_context +# 25| getIdentifier(): [NameRef] quote_token_with_context +# 26| getTokenTree(): [TokenTree] TokenTree +# 25| getMacroCallExpansion(): [BlockExpr] { ... } +# 26| getStmtList(): [StmtList] StmtList +# 27| getStatement(8): [ExprStmt] ExprStmt +# 27| getExpr(): [MacroExpr] MacroExpr +# 27| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 25| getPath(): [Path] ...::quote_token_with_context +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] quote_token_with_context +# 25| getIdentifier(): [NameRef] quote_token_with_context +# 27| getTokenTree(): [TokenTree] TokenTree +# 25| getMacroCallExpansion(): [BlockExpr] { ... } +# 27| getStmtList(): [StmtList] StmtList +# 27| getTailExpr(): [MacroExpr] MacroExpr +# 27| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 25| getPath(): [Path] ...::quote_token_with_context +# 25| getQualifier(): [Path] $crate +# 25| getSegment(): [PathSegment] $crate +# 25| getIdentifier(): [NameRef] $crate +# 25| getSegment(): [PathSegment] quote_token_with_context +# 25| getIdentifier(): [NameRef] quote_token_with_context +# 27| getTokenTree(): [TokenTree] TokenTree +# 25| getMacroCallExpansion(): [BlockExpr] { ... } +# 27| getStmtList(): [StmtList] StmtList # 25| getTailExpr(): [VariableAccess] _s # 25| getPath(): [Path] _s # 25| getSegment(): [PathSegment] _s @@ -2707,1097 +2766,1149 @@ proc_macro.rs: # 41| getSegment(): [PathSegment] quote_each_token # 41| getIdentifier(): [NameRef] quote_each_token # 42| getTokenTree(): [TokenTree] TokenTree -# 42| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getTailExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_tokens_with_context!... -# 41| getPath(): [Path] ...::quote_tokens_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_tokens_with_context -# 41| getIdentifier(): [NameRef] quote_tokens_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 42| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getStatement(0): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getStatement(1): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getStatement(2): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getStatement(3): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 42| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getTailExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 42| getTokenTree(): [TokenTree] TokenTree -# 42| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getStatement(0): [ExprStmt] ExprStmt -# 42| getExpr(): [CallExpr] ...::push_ident(...) -# 42| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 42| getArg(1): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] stringify!... -# 41| getPath(): [Path] stringify -# 41| getSegment(): [PathSegment] stringify -# 41| getIdentifier(): [NameRef] stringify -# 42| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [StringLiteralExpr] "const" -# 41| getFunction(): [PathExpr] ...::push_ident -# 41| getPath(): [Path] ...::push_ident -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_ident -# 41| getIdentifier(): [NameRef] push_ident -# 42| getStatement(4): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 42| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getStatement(0): [ExprStmt] ExprStmt -# 42| getExpr(): [CallExpr] ...::to_tokens(...) -# 42| getArgList(): [ArgList] ArgList -# 42| getArg(0): [RefExpr] &const_ident -# 42| getExpr(): [VariableAccess] const_ident -# 42| getPath(): [Path] const_ident -# 42| getSegment(): [PathSegment] const_ident -# 42| getIdentifier(): [NameRef] const_ident -# 41| getArg(1): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 41| getFunction(): [PathExpr] ...::to_tokens -# 41| getPath(): [Path] ...::to_tokens -# 41| getQualifier(): [Path] ...::ToTokens -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] ToTokens -# 41| getIdentifier(): [NameRef] ToTokens -# 41| getSegment(): [PathSegment] to_tokens -# 41| getIdentifier(): [NameRef] to_tokens -# 42| getStatement(5): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getStatement(6): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 42| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getTailExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 42| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 41| getStatement(0): [ExprStmt] ExprStmt -# 41| getExpr(): [CallExpr] ...::push_colon(...) -# 41| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 41| getFunction(): [PathExpr] ...::push_colon -# 41| getPath(): [Path] ...::push_colon -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_colon -# 41| getIdentifier(): [NameRef] push_colon -# 42| getStatement(7): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 42| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getTailExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 42| getTokenTree(): [TokenTree] TokenTree -# 42| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getStatement(0): [ExprStmt] ExprStmt -# 42| getExpr(): [CallExpr] ...::push_ident(...) -# 42| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 42| getArg(1): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] stringify!... -# 41| getPath(): [Path] stringify -# 41| getSegment(): [PathSegment] stringify -# 41| getIdentifier(): [NameRef] stringify -# 42| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [StringLiteralExpr] "u32" -# 41| getFunction(): [PathExpr] ...::push_ident -# 41| getPath(): [Path] ...::push_ident -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_ident -# 41| getIdentifier(): [NameRef] push_ident -# 42| getStatement(8): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 42| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getTailExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 42| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 41| getStatement(0): [ExprStmt] ExprStmt -# 41| getExpr(): [CallExpr] ...::push_eq(...) -# 41| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 41| getFunction(): [PathExpr] ...::push_eq -# 41| getPath(): [Path] ...::push_eq -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_eq -# 41| getIdentifier(): [NameRef] push_eq -# 42| getStatement(9): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 42| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getTailExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 42| getTokenTree(): [TokenTree] TokenTree -# 42| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr +# 42| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getTailExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_tokens_with_context!... +# 41| getPath(): [Path] ...::quote_tokens_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_tokens_with_context +# 41| getIdentifier(): [NameRef] quote_tokens_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 42| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getStatement(0): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getStatement(1): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getStatement(2): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getStatement(3): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 42| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getTailExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 42| getTokenTree(): [TokenTree] TokenTree +# 42| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getStatement(0): [ExprStmt] ExprStmt +# 42| getExpr(): [CallExpr] ...::push_ident(...) +# 42| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 42| getArg(1): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] stringify!... +# 41| getPath(): [Path] stringify +# 41| getSegment(): [PathSegment] stringify +# 41| getIdentifier(): [NameRef] stringify +# 42| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [StringLiteralExpr] "const" +# 41| getFunction(): [PathExpr] ...::push_ident +# 41| getPath(): [Path] ...::push_ident +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_ident +# 41| getIdentifier(): [NameRef] push_ident +# 42| getStatement(4): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 42| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList # 42| getStatement(0): [ExprStmt] ExprStmt -# 42| getExpr(): [CallExpr] ...::parse(...) +# 42| getExpr(): [CallExpr] ...::to_tokens(...) # 42| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 42| getArg(1): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] stringify!... -# 41| getPath(): [Path] stringify -# 41| getSegment(): [PathSegment] stringify -# 41| getIdentifier(): [NameRef] stringify -# 42| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [StringLiteralExpr] "42" -# 41| getFunction(): [PathExpr] ...::parse -# 41| getPath(): [Path] ...::parse -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] parse -# 41| getIdentifier(): [NameRef] parse -# 42| getStatement(10): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 42| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 42| getTailExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 42| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 41| getStatement(0): [ExprStmt] ExprStmt -# 41| getExpr(): [CallExpr] ...::push_semi(...) -# 41| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s +# 42| getArg(0): [RefExpr] &const_ident +# 42| getExpr(): [VariableAccess] const_ident +# 42| getPath(): [Path] const_ident +# 42| getSegment(): [PathSegment] const_ident +# 42| getIdentifier(): [NameRef] const_ident +# 41| getArg(1): [RefExpr] &mut _s # 41| getExpr(): [VariableAccess] _s # 41| getPath(): [Path] _s # 41| getSegment(): [PathSegment] _s # 41| getIdentifier(): [NameRef] _s -# 41| getFunction(): [PathExpr] ...::push_semi -# 41| getPath(): [Path] ...::push_semi -# 41| getQualifier(): [Path] ...::__private +# 41| getFunction(): [PathExpr] ...::to_tokens +# 41| getPath(): [Path] ...::to_tokens +# 41| getQualifier(): [Path] ...::ToTokens # 41| getQualifier(): [Path] $crate # 41| getSegment(): [PathSegment] $crate # 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_semi -# 41| getIdentifier(): [NameRef] push_semi -# 42| getStatement(11): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 44| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 44| getTailExpr(): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 44| getTokenTree(): [TokenTree] TokenTree -# 44| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr +# 41| getSegment(): [PathSegment] ToTokens +# 41| getIdentifier(): [NameRef] ToTokens +# 41| getSegment(): [PathSegment] to_tokens +# 41| getIdentifier(): [NameRef] to_tokens +# 42| getStatement(5): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getStatement(6): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 42| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getTailExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 42| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 41| getStatement(0): [ExprStmt] ExprStmt +# 41| getExpr(): [CallExpr] ...::push_colon(...) +# 41| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 41| getFunction(): [PathExpr] ...::push_colon +# 41| getPath(): [Path] ...::push_colon +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_colon +# 41| getIdentifier(): [NameRef] push_colon +# 42| getStatement(7): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 42| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getTailExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 42| getTokenTree(): [TokenTree] TokenTree +# 42| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getStatement(0): [ExprStmt] ExprStmt +# 42| getExpr(): [CallExpr] ...::push_ident(...) +# 42| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 42| getArg(1): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] stringify!... +# 41| getPath(): [Path] stringify +# 41| getSegment(): [PathSegment] stringify +# 41| getIdentifier(): [NameRef] stringify +# 42| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [StringLiteralExpr] "u32" +# 41| getFunction(): [PathExpr] ...::push_ident +# 41| getPath(): [Path] ...::push_ident +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_ident +# 41| getIdentifier(): [NameRef] push_ident +# 42| getStatement(8): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 42| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getTailExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 42| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 41| getStatement(0): [ExprStmt] ExprStmt +# 41| getExpr(): [CallExpr] ...::push_eq(...) +# 41| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 41| getFunction(): [PathExpr] ...::push_eq +# 41| getPath(): [Path] ...::push_eq +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_eq +# 41| getIdentifier(): [NameRef] push_eq +# 42| getStatement(9): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 42| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getTailExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 42| getTokenTree(): [TokenTree] TokenTree +# 42| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getStatement(0): [ExprStmt] ExprStmt +# 42| getExpr(): [CallExpr] ...::parse(...) +# 42| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 42| getArg(1): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] stringify!... +# 41| getPath(): [Path] stringify +# 41| getSegment(): [PathSegment] stringify +# 41| getIdentifier(): [NameRef] stringify +# 42| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [StringLiteralExpr] "42" +# 41| getFunction(): [PathExpr] ...::parse +# 41| getPath(): [Path] ...::parse +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] parse +# 41| getIdentifier(): [NameRef] parse +# 42| getStatement(10): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 42| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 42| getTailExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 42| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 41| getStatement(0): [ExprStmt] ExprStmt +# 41| getExpr(): [CallExpr] ...::push_semi(...) +# 41| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 41| getFunction(): [PathExpr] ...::push_semi +# 41| getPath(): [Path] ...::push_semi +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_semi +# 41| getIdentifier(): [NameRef] push_semi +# 42| getStatement(11): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 44| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 44| getTailExpr(): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 44| getTokenTree(): [TokenTree] TokenTree +# 44| getMacroCallExpansion(): [BlockExpr] { ... } +# 44| getStmtList(): [StmtList] StmtList +# 44| getStatement(0): [ExprStmt] ExprStmt +# 44| getExpr(): [CallExpr] ...::push_ident(...) +# 44| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 44| getArg(1): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] stringify!... +# 41| getPath(): [Path] stringify +# 41| getSegment(): [PathSegment] stringify +# 41| getIdentifier(): [NameRef] stringify +# 44| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [StringLiteralExpr] "impl" +# 41| getFunction(): [PathExpr] ...::push_ident +# 41| getPath(): [Path] ...::push_ident +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_ident +# 41| getIdentifier(): [NameRef] push_ident +# 42| getStatement(12): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 44| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 44| getTailExpr(): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 44| getTokenTree(): [TokenTree] TokenTree +# 44| getMacroCallExpansion(): [BlockExpr] { ... } +# 44| getStmtList(): [StmtList] StmtList +# 44| getStatement(0): [ExprStmt] ExprStmt +# 44| getExpr(): [CallExpr] ...::push_ident(...) +# 44| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 44| getArg(1): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] stringify!... +# 41| getPath(): [Path] stringify +# 41| getSegment(): [PathSegment] stringify +# 41| getIdentifier(): [NameRef] stringify +# 44| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [StringLiteralExpr] "MyTrait" +# 41| getFunction(): [PathExpr] ...::push_ident +# 41| getPath(): [Path] ...::push_ident +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_ident +# 41| getIdentifier(): [NameRef] push_ident +# 42| getStatement(13): [ExprStmt] ExprStmt +# 42| getExpr(): [MacroExpr] MacroExpr +# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 42| getTokenTree(): [TokenTree] TokenTree +# 44| getMacroCallExpansion(): [BlockExpr] { ... } +# 42| getStmtList(): [StmtList] StmtList +# 44| getTailExpr(): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 44| getTokenTree(): [TokenTree] TokenTree +# 44| getMacroCallExpansion(): [BlockExpr] { ... } +# 44| getStmtList(): [StmtList] StmtList +# 44| getStatement(0): [ExprStmt] ExprStmt +# 44| getExpr(): [CallExpr] ...::push_ident(...) +# 44| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 44| getArg(1): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] stringify!... +# 41| getPath(): [Path] stringify +# 41| getSegment(): [PathSegment] stringify +# 41| getIdentifier(): [NameRef] stringify +# 44| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [StringLiteralExpr] "for" +# 41| getFunction(): [PathExpr] ...::push_ident +# 41| getPath(): [Path] ...::push_ident +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_ident +# 41| getIdentifier(): [NameRef] push_ident +# 44| getStatement(14): [ExprStmt] ExprStmt +# 44| getExpr(): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 44| getTokenTree(): [TokenTree] TokenTree +# 44| getMacroCallExpansion(): [BlockExpr] { ... } +# 44| getStmtList(): [StmtList] StmtList # 44| getStatement(0): [ExprStmt] ExprStmt -# 44| getExpr(): [CallExpr] ...::push_ident(...) +# 44| getExpr(): [CallExpr] ...::to_tokens(...) # 44| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s +# 44| getArg(0): [RefExpr] &name +# 44| getExpr(): [VariableAccess] name +# 44| getPath(): [Path] name +# 44| getSegment(): [PathSegment] name +# 44| getIdentifier(): [NameRef] name +# 41| getArg(1): [RefExpr] &mut _s # 41| getExpr(): [VariableAccess] _s # 41| getPath(): [Path] _s # 41| getSegment(): [PathSegment] _s # 41| getIdentifier(): [NameRef] _s -# 44| getArg(1): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] stringify!... -# 41| getPath(): [Path] stringify -# 41| getSegment(): [PathSegment] stringify -# 41| getIdentifier(): [NameRef] stringify -# 44| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [StringLiteralExpr] "impl" -# 41| getFunction(): [PathExpr] ...::push_ident -# 41| getPath(): [Path] ...::push_ident -# 41| getQualifier(): [Path] ...::__private +# 41| getFunction(): [PathExpr] ...::to_tokens +# 41| getPath(): [Path] ...::to_tokens +# 41| getQualifier(): [Path] ...::ToTokens # 41| getQualifier(): [Path] $crate # 41| getSegment(): [PathSegment] $crate # 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_ident -# 41| getIdentifier(): [NameRef] push_ident -# 42| getStatement(12): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 44| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 44| getTailExpr(): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 44| getTokenTree(): [TokenTree] TokenTree -# 44| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 44| getStatement(0): [ExprStmt] ExprStmt -# 44| getExpr(): [CallExpr] ...::push_ident(...) -# 44| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 44| getArg(1): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] stringify!... -# 41| getPath(): [Path] stringify -# 41| getSegment(): [PathSegment] stringify -# 41| getIdentifier(): [NameRef] stringify -# 44| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [StringLiteralExpr] "MyTrait" -# 41| getFunction(): [PathExpr] ...::push_ident -# 41| getPath(): [Path] ...::push_ident -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_ident -# 41| getIdentifier(): [NameRef] push_ident -# 42| getStatement(13): [ExprStmt] ExprStmt -# 42| getExpr(): [MacroExpr] MacroExpr -# 42| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 42| getTokenTree(): [TokenTree] TokenTree -# 44| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 44| getTailExpr(): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 44| getTokenTree(): [TokenTree] TokenTree -# 44| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 44| getStatement(0): [ExprStmt] ExprStmt -# 44| getExpr(): [CallExpr] ...::push_ident(...) -# 44| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 44| getArg(1): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] stringify!... -# 41| getPath(): [Path] stringify -# 41| getSegment(): [PathSegment] stringify -# 41| getIdentifier(): [NameRef] stringify -# 44| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [StringLiteralExpr] "for" -# 41| getFunction(): [PathExpr] ...::push_ident -# 41| getPath(): [Path] ...::push_ident -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_ident -# 41| getIdentifier(): [NameRef] push_ident -# 44| getStatement(14): [ExprStmt] ExprStmt -# 44| getExpr(): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 44| getTokenTree(): [TokenTree] TokenTree -# 44| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 44| getStatement(0): [ExprStmt] ExprStmt -# 44| getExpr(): [CallExpr] ...::to_tokens(...) -# 44| getArgList(): [ArgList] ArgList -# 44| getArg(0): [RefExpr] &name -# 44| getExpr(): [VariableAccess] name -# 44| getPath(): [Path] name -# 44| getSegment(): [PathSegment] name -# 44| getIdentifier(): [NameRef] name -# 41| getArg(1): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 41| getFunction(): [PathExpr] ...::to_tokens -# 41| getPath(): [Path] ...::to_tokens -# 41| getQualifier(): [Path] ...::ToTokens -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] ToTokens -# 41| getIdentifier(): [NameRef] ToTokens -# 41| getSegment(): [PathSegment] to_tokens -# 41| getIdentifier(): [NameRef] to_tokens -# 44| getStatement(15): [ExprStmt] ExprStmt -# 44| getExpr(): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 44| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 44| getStatement(16): [ExprStmt] ExprStmt -# 44| getExpr(): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 44| getTokenTree(): [TokenTree] TokenTree -# 44| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 44| getTailExpr(): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 44| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getStatement(0): [ExprStmt] ExprStmt -# 45| getExpr(): [CallExpr] ...::push_group(...) -# 45| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 41| getArg(1): [PathExpr] ...::Brace -# 41| getPath(): [Path] ...::Brace -# 41| getQualifier(): [Path] ...::Delimiter -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] Delimiter -# 41| getIdentifier(): [NameRef] Delimiter -# 41| getSegment(): [PathSegment] Brace -# 41| getIdentifier(): [NameRef] Brace -# 45| getArg(2): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote!... -# 41| getPath(): [Path] ...::quote -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote -# 41| getIdentifier(): [NameRef] quote -# 45| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [BlockExpr] { ... } -# 45| getStmtList(): [StmtList] StmtList -# 41| getStatement(0): [LetStmt] let ... = ... -# 41| getInitializer(): [CallExpr] ...::new(...) -# 41| getArgList(): [ArgList] ArgList -# 41| getFunction(): [PathExpr] ...::new -# 41| getPath(): [Path] ...::new -# 41| getQualifier(): [Path] ...::TokenStream -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] TokenStream -# 41| getIdentifier(): [NameRef] TokenStream -# 41| getSegment(): [PathSegment] new -# 41| getIdentifier(): [NameRef] new -# 41| getPat(): [IdentPat] mut _s -# 41| getName(): [Name] _s -# 45| getStatement(1): [ExprStmt] ExprStmt -# 45| getExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_each_token!... -# 41| getPath(): [Path] ...::quote_each_token +# 41| getSegment(): [PathSegment] ToTokens +# 41| getIdentifier(): [NameRef] ToTokens +# 41| getSegment(): [PathSegment] to_tokens +# 41| getIdentifier(): [NameRef] to_tokens +# 44| getStatement(15): [ExprStmt] ExprStmt +# 44| getExpr(): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 44| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 44| getStmtList(): [StmtList] StmtList +# 44| getStatement(16): [ExprStmt] ExprStmt +# 44| getExpr(): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 44| getTokenTree(): [TokenTree] TokenTree +# 44| getMacroCallExpansion(): [BlockExpr] { ... } +# 44| getStmtList(): [StmtList] StmtList +# 44| getTailExpr(): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 44| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 44| getStmtList(): [StmtList] StmtList +# 45| getStatement(0): [ExprStmt] ExprStmt +# 45| getExpr(): [CallExpr] ...::push_group(...) +# 45| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 41| getArg(1): [PathExpr] ...::Brace +# 41| getPath(): [Path] ...::Brace +# 41| getQualifier(): [Path] ...::Delimiter +# 41| getQualifier(): [Path] ...::__private # 41| getQualifier(): [Path] $crate # 41| getSegment(): [PathSegment] $crate # 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_each_token -# 41| getIdentifier(): [NameRef] quote_each_token -# 45| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getTailExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_tokens_with_context!... -# 41| getPath(): [Path] ...::quote_tokens_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_tokens_with_context -# 41| getIdentifier(): [NameRef] quote_tokens_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getStatement(0): [ExprStmt] ExprStmt -# 45| getExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getStatement(1): [ExprStmt] ExprStmt -# 45| getExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getStatement(2): [ExprStmt] ExprStmt -# 45| getExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getStatement(3): [ExprStmt] ExprStmt -# 45| getExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getTailExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 45| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getStatement(0): [ExprStmt] ExprStmt -# 45| getExpr(): [CallExpr] ...::push_ident(...) -# 45| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 45| getArg(1): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] stringify!... -# 41| getPath(): [Path] stringify -# 41| getSegment(): [PathSegment] stringify -# 41| getIdentifier(): [NameRef] stringify -# 45| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [StringLiteralExpr] "fn" -# 41| getFunction(): [PathExpr] ...::push_ident -# 41| getPath(): [Path] ...::push_ident -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_ident -# 41| getIdentifier(): [NameRef] push_ident -# 45| getStatement(4): [ExprStmt] ExprStmt -# 45| getExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getTailExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 45| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getStatement(0): [ExprStmt] ExprStmt -# 45| getExpr(): [CallExpr] ...::push_ident(...) -# 45| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 45| getArg(1): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] stringify!... -# 41| getPath(): [Path] stringify -# 41| getSegment(): [PathSegment] stringify -# 41| getIdentifier(): [NameRef] stringify -# 45| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [StringLiteralExpr] "my_method" -# 41| getFunction(): [PathExpr] ...::push_ident -# 41| getPath(): [Path] ...::push_ident -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_ident -# 41| getIdentifier(): [NameRef] push_ident -# 45| getStatement(5): [ExprStmt] ExprStmt -# 45| getExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getTailExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 45| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 41| getStatement(0): [ExprStmt] ExprStmt -# 41| getExpr(): [CallExpr] ...::push_group(...) -# 41| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 41| getArg(1): [PathExpr] ...::Parenthesis -# 41| getPath(): [Path] ...::Parenthesis -# 41| getQualifier(): [Path] ...::Delimiter -# 41| getQualifier(): [Path] ...::__private +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] Delimiter +# 41| getIdentifier(): [NameRef] Delimiter +# 41| getSegment(): [PathSegment] Brace +# 41| getIdentifier(): [NameRef] Brace +# 45| getArg(2): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote!... +# 41| getPath(): [Path] ...::quote +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote +# 41| getIdentifier(): [NameRef] quote +# 45| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 41| getStatement(0): [LetStmt] let ... = ... +# 41| getInitializer(): [CallExpr] ...::new(...) +# 41| getArgList(): [ArgList] ArgList +# 41| getFunction(): [PathExpr] ...::new +# 41| getPath(): [Path] ...::new +# 41| getQualifier(): [Path] ...::TokenStream +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] TokenStream +# 41| getIdentifier(): [NameRef] TokenStream +# 41| getSegment(): [PathSegment] new +# 41| getIdentifier(): [NameRef] new +# 41| getPat(): [IdentPat] mut _s +# 41| getName(): [Name] _s +# 45| getStatement(1): [ExprStmt] ExprStmt +# 45| getExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_each_token!... +# 41| getPath(): [Path] ...::quote_each_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_each_token +# 41| getIdentifier(): [NameRef] quote_each_token +# 45| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getTailExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_tokens_with_context!... +# 41| getPath(): [Path] ...::quote_tokens_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_tokens_with_context +# 41| getIdentifier(): [NameRef] quote_tokens_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getStatement(0): [ExprStmt] ExprStmt +# 45| getExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getStatement(1): [ExprStmt] ExprStmt +# 45| getExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getStatement(2): [ExprStmt] ExprStmt +# 45| getExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getStatement(3): [ExprStmt] ExprStmt +# 45| getExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getTailExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token # 41| getQualifier(): [Path] $crate # 41| getSegment(): [PathSegment] $crate # 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] Delimiter -# 41| getIdentifier(): [NameRef] Delimiter -# 41| getSegment(): [PathSegment] Parenthesis -# 41| getIdentifier(): [NameRef] Parenthesis -# 41| getArg(2): [MacroExpr] MacroExpr -# 41| getMacroCall(): [MacroCall] ...::quote!... -# 41| getPath(): [Path] ...::quote -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote -# 41| getIdentifier(): [NameRef] quote -# 41| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [CallExpr] ...::new(...) -# 41| getArgList(): [ArgList] ArgList -# 41| getFunction(): [PathExpr] ...::new -# 41| getPath(): [Path] ...::new -# 41| getQualifier(): [Path] ...::TokenStream -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] TokenStream -# 41| getIdentifier(): [NameRef] TokenStream -# 41| getSegment(): [PathSegment] new -# 41| getIdentifier(): [NameRef] new -# 41| getFunction(): [PathExpr] ...::push_group -# 41| getPath(): [Path] ...::push_group -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_group -# 41| getIdentifier(): [NameRef] push_group -# 45| getStatement(6): [ExprStmt] ExprStmt -# 45| getExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getTailExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 45| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 41| getStatement(0): [ExprStmt] ExprStmt -# 41| getExpr(): [CallExpr] ...::push_rarrow(...) -# 41| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 41| getFunction(): [PathExpr] ...::push_rarrow -# 41| getPath(): [Path] ...::push_rarrow -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_rarrow -# 41| getIdentifier(): [NameRef] push_rarrow -# 45| getStatement(7): [ExprStmt] ExprStmt -# 45| getExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getTailExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 45| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getStatement(0): [ExprStmt] ExprStmt -# 45| getExpr(): [CallExpr] ...::push_ident(...) -# 45| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 45| getArg(1): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] stringify!... -# 41| getPath(): [Path] stringify -# 41| getSegment(): [PathSegment] stringify -# 41| getIdentifier(): [NameRef] stringify -# 45| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [StringLiteralExpr] "u32" -# 41| getFunction(): [PathExpr] ...::push_ident -# 41| getPath(): [Path] ...::push_ident -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_ident -# 41| getIdentifier(): [NameRef] push_ident -# 45| getStatement(8): [ExprStmt] ExprStmt -# 45| getExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 45| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getTailExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token!... -# 41| getPath(): [Path] ...::quote_token -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token -# 41| getIdentifier(): [NameRef] quote_token -# 45| getTokenTree(): [TokenTree] TokenTree -# 46| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 46| getStatement(0): [ExprStmt] ExprStmt -# 46| getExpr(): [CallExpr] ...::push_group(...) -# 46| getArgList(): [ArgList] ArgList -# 41| getArg(0): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 41| getArg(1): [PathExpr] ...::Brace -# 41| getPath(): [Path] ...::Brace -# 41| getQualifier(): [Path] ...::Delimiter -# 41| getQualifier(): [Path] ...::__private +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 45| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getStatement(0): [ExprStmt] ExprStmt +# 45| getExpr(): [CallExpr] ...::push_ident(...) +# 45| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 45| getArg(1): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] stringify!... +# 41| getPath(): [Path] stringify +# 41| getSegment(): [PathSegment] stringify +# 41| getIdentifier(): [NameRef] stringify +# 45| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [StringLiteralExpr] "fn" +# 41| getFunction(): [PathExpr] ...::push_ident +# 41| getPath(): [Path] ...::push_ident +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_ident +# 41| getIdentifier(): [NameRef] push_ident +# 45| getStatement(4): [ExprStmt] ExprStmt +# 45| getExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getTailExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token # 41| getQualifier(): [Path] $crate # 41| getSegment(): [PathSegment] $crate # 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] Delimiter -# 41| getIdentifier(): [NameRef] Delimiter -# 41| getSegment(): [PathSegment] Brace -# 41| getIdentifier(): [NameRef] Brace -# 46| getArg(2): [MacroExpr] MacroExpr -# 46| getMacroCall(): [MacroCall] ...::quote!... -# 41| getPath(): [Path] ...::quote -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote -# 41| getIdentifier(): [NameRef] quote -# 46| getTokenTree(): [TokenTree] TokenTree -# 46| getMacroCallExpansion(): [BlockExpr] { ... } -# 46| getStmtList(): [StmtList] StmtList -# 41| getStatement(0): [LetStmt] let ... = ... -# 41| getInitializer(): [CallExpr] ...::new(...) -# 41| getArgList(): [ArgList] ArgList -# 41| getFunction(): [PathExpr] ...::new -# 41| getPath(): [Path] ...::new -# 41| getQualifier(): [Path] ...::TokenStream +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 45| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getStatement(0): [ExprStmt] ExprStmt +# 45| getExpr(): [CallExpr] ...::push_ident(...) +# 45| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 45| getArg(1): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] stringify!... +# 41| getPath(): [Path] stringify +# 41| getSegment(): [PathSegment] stringify +# 41| getIdentifier(): [NameRef] stringify +# 45| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [StringLiteralExpr] "my_method" +# 41| getFunction(): [PathExpr] ...::push_ident +# 41| getPath(): [Path] ...::push_ident # 41| getQualifier(): [Path] ...::__private # 41| getQualifier(): [Path] $crate # 41| getSegment(): [PathSegment] $crate # 41| getIdentifier(): [NameRef] $crate # 41| getSegment(): [PathSegment] __private # 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] TokenStream -# 41| getIdentifier(): [NameRef] TokenStream -# 41| getSegment(): [PathSegment] new -# 41| getIdentifier(): [NameRef] new -# 41| getPat(): [IdentPat] mut _s -# 41| getName(): [Name] _s -# 46| getStatement(1): [ExprStmt] ExprStmt -# 46| getExpr(): [CallExpr] ...::to_tokens(...) -# 46| getArgList(): [ArgList] ArgList -# 46| getArg(0): [RefExpr] &const_ident -# 46| getExpr(): [VariableAccess] const_ident -# 46| getPath(): [Path] const_ident -# 46| getSegment(): [PathSegment] const_ident -# 46| getIdentifier(): [NameRef] const_ident -# 41| getArg(1): [RefExpr] &mut _s -# 41| getExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 41| getFunction(): [PathExpr] ...::to_tokens -# 41| getPath(): [Path] ...::to_tokens -# 41| getQualifier(): [Path] ...::ToTokens -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] ToTokens -# 41| getIdentifier(): [NameRef] ToTokens -# 41| getSegment(): [PathSegment] to_tokens -# 41| getIdentifier(): [NameRef] to_tokens -# 41| getTailExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 41| getFunction(): [PathExpr] ...::push_group -# 41| getPath(): [Path] ...::push_group -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_group -# 41| getIdentifier(): [NameRef] push_group -# 45| getStatement(9): [ExprStmt] ExprStmt -# 45| getExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getStatement(10): [ExprStmt] ExprStmt -# 45| getExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 45| getTailExpr(): [MacroExpr] MacroExpr -# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 45| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 41| getTailExpr(): [VariableAccess] _s -# 41| getPath(): [Path] _s -# 41| getSegment(): [PathSegment] _s -# 41| getIdentifier(): [NameRef] _s -# 41| getFunction(): [PathExpr] ...::push_group -# 41| getPath(): [Path] ...::push_group -# 41| getQualifier(): [Path] ...::__private -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] __private -# 41| getIdentifier(): [NameRef] __private -# 41| getSegment(): [PathSegment] push_group -# 41| getIdentifier(): [NameRef] push_group -# 44| getStatement(17): [ExprStmt] ExprStmt -# 44| getExpr(): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 44| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 44| getStatement(18): [ExprStmt] ExprStmt -# 44| getExpr(): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 44| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr -# 44| getTailExpr(): [MacroExpr] MacroExpr -# 44| getMacroCall(): [MacroCall] ...::quote_token_with_context!... -# 41| getPath(): [Path] ...::quote_token_with_context -# 41| getQualifier(): [Path] $crate -# 41| getSegment(): [PathSegment] $crate -# 41| getIdentifier(): [NameRef] $crate -# 41| getSegment(): [PathSegment] quote_token_with_context -# 41| getIdentifier(): [NameRef] quote_token_with_context -# 44| getTokenTree(): [TokenTree] TokenTree -# 41| getMacroCallExpansion(): [MacroBlockExpr] MacroBlockExpr +# 41| getSegment(): [PathSegment] push_ident +# 41| getIdentifier(): [NameRef] push_ident +# 45| getStatement(5): [ExprStmt] ExprStmt +# 45| getExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getTailExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 45| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 41| getStatement(0): [ExprStmt] ExprStmt +# 41| getExpr(): [CallExpr] ...::push_group(...) +# 41| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 41| getArg(1): [PathExpr] ...::Parenthesis +# 41| getPath(): [Path] ...::Parenthesis +# 41| getQualifier(): [Path] ...::Delimiter +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] Delimiter +# 41| getIdentifier(): [NameRef] Delimiter +# 41| getSegment(): [PathSegment] Parenthesis +# 41| getIdentifier(): [NameRef] Parenthesis +# 41| getArg(2): [MacroExpr] MacroExpr +# 41| getMacroCall(): [MacroCall] ...::quote!... +# 41| getPath(): [Path] ...::quote +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote +# 41| getIdentifier(): [NameRef] quote +# 41| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [CallExpr] ...::new(...) +# 41| getArgList(): [ArgList] ArgList +# 41| getFunction(): [PathExpr] ...::new +# 41| getPath(): [Path] ...::new +# 41| getQualifier(): [Path] ...::TokenStream +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] TokenStream +# 41| getIdentifier(): [NameRef] TokenStream +# 41| getSegment(): [PathSegment] new +# 41| getIdentifier(): [NameRef] new +# 41| getFunction(): [PathExpr] ...::push_group +# 41| getPath(): [Path] ...::push_group +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_group +# 41| getIdentifier(): [NameRef] push_group +# 45| getStatement(6): [ExprStmt] ExprStmt +# 45| getExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getTailExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 45| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 41| getStatement(0): [ExprStmt] ExprStmt +# 41| getExpr(): [CallExpr] ...::push_rarrow(...) +# 41| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 41| getFunction(): [PathExpr] ...::push_rarrow +# 41| getPath(): [Path] ...::push_rarrow +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_rarrow +# 41| getIdentifier(): [NameRef] push_rarrow +# 45| getStatement(7): [ExprStmt] ExprStmt +# 45| getExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getTailExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 45| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getStatement(0): [ExprStmt] ExprStmt +# 45| getExpr(): [CallExpr] ...::push_ident(...) +# 45| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 45| getArg(1): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] stringify!... +# 41| getPath(): [Path] stringify +# 41| getSegment(): [PathSegment] stringify +# 41| getIdentifier(): [NameRef] stringify +# 45| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [StringLiteralExpr] "u32" +# 41| getFunction(): [PathExpr] ...::push_ident +# 41| getPath(): [Path] ...::push_ident +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_ident +# 41| getIdentifier(): [NameRef] push_ident +# 45| getStatement(8): [ExprStmt] ExprStmt +# 45| getExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 45| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getTailExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token!... +# 41| getPath(): [Path] ...::quote_token +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token +# 41| getIdentifier(): [NameRef] quote_token +# 45| getTokenTree(): [TokenTree] TokenTree +# 46| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 46| getStatement(0): [ExprStmt] ExprStmt +# 46| getExpr(): [CallExpr] ...::push_group(...) +# 46| getArgList(): [ArgList] ArgList +# 41| getArg(0): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 41| getArg(1): [PathExpr] ...::Brace +# 41| getPath(): [Path] ...::Brace +# 41| getQualifier(): [Path] ...::Delimiter +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] Delimiter +# 41| getIdentifier(): [NameRef] Delimiter +# 41| getSegment(): [PathSegment] Brace +# 41| getIdentifier(): [NameRef] Brace +# 46| getArg(2): [MacroExpr] MacroExpr +# 46| getMacroCall(): [MacroCall] ...::quote!... +# 41| getPath(): [Path] ...::quote +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote +# 41| getIdentifier(): [NameRef] quote +# 46| getTokenTree(): [TokenTree] TokenTree +# 46| getMacroCallExpansion(): [BlockExpr] { ... } +# 46| getStmtList(): [StmtList] StmtList +# 41| getStatement(0): [LetStmt] let ... = ... +# 41| getInitializer(): [CallExpr] ...::new(...) +# 41| getArgList(): [ArgList] ArgList +# 41| getFunction(): [PathExpr] ...::new +# 41| getPath(): [Path] ...::new +# 41| getQualifier(): [Path] ...::TokenStream +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] TokenStream +# 41| getIdentifier(): [NameRef] TokenStream +# 41| getSegment(): [PathSegment] new +# 41| getIdentifier(): [NameRef] new +# 41| getPat(): [IdentPat] mut _s +# 41| getName(): [Name] _s +# 46| getStatement(1): [ExprStmt] ExprStmt +# 46| getExpr(): [CallExpr] ...::to_tokens(...) +# 46| getArgList(): [ArgList] ArgList +# 46| getArg(0): [RefExpr] &const_ident +# 46| getExpr(): [VariableAccess] const_ident +# 46| getPath(): [Path] const_ident +# 46| getSegment(): [PathSegment] const_ident +# 46| getIdentifier(): [NameRef] const_ident +# 41| getArg(1): [RefExpr] &mut _s +# 41| getExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 41| getFunction(): [PathExpr] ...::to_tokens +# 41| getPath(): [Path] ...::to_tokens +# 41| getQualifier(): [Path] ...::ToTokens +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] ToTokens +# 41| getIdentifier(): [NameRef] ToTokens +# 41| getSegment(): [PathSegment] to_tokens +# 41| getIdentifier(): [NameRef] to_tokens +# 41| getTailExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 41| getFunction(): [PathExpr] ...::push_group +# 41| getPath(): [Path] ...::push_group +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_group +# 41| getIdentifier(): [NameRef] push_group +# 45| getStatement(9): [ExprStmt] ExprStmt +# 45| getExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getStatement(10): [ExprStmt] ExprStmt +# 45| getExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 45| getTailExpr(): [MacroExpr] MacroExpr +# 45| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 45| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 45| getStmtList(): [StmtList] StmtList +# 41| getTailExpr(): [VariableAccess] _s +# 41| getPath(): [Path] _s +# 41| getSegment(): [PathSegment] _s +# 41| getIdentifier(): [NameRef] _s +# 41| getFunction(): [PathExpr] ...::push_group +# 41| getPath(): [Path] ...::push_group +# 41| getQualifier(): [Path] ...::__private +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] __private +# 41| getIdentifier(): [NameRef] __private +# 41| getSegment(): [PathSegment] push_group +# 41| getIdentifier(): [NameRef] push_group +# 44| getStatement(17): [ExprStmt] ExprStmt +# 44| getExpr(): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 44| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 44| getStmtList(): [StmtList] StmtList +# 44| getStatement(18): [ExprStmt] ExprStmt +# 44| getExpr(): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 44| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 44| getStmtList(): [StmtList] StmtList +# 44| getTailExpr(): [MacroExpr] MacroExpr +# 44| getMacroCall(): [MacroCall] ...::quote_token_with_context!... +# 41| getPath(): [Path] ...::quote_token_with_context +# 41| getQualifier(): [Path] $crate +# 41| getSegment(): [PathSegment] $crate +# 41| getIdentifier(): [NameRef] $crate +# 41| getSegment(): [PathSegment] quote_token_with_context +# 41| getIdentifier(): [NameRef] quote_token_with_context +# 44| getTokenTree(): [TokenTree] TokenTree +# 41| getMacroCallExpansion(): [BlockExpr] { ... } +# 44| getStmtList(): [StmtList] StmtList # 41| getTailExpr(): [VariableAccess] _s # 41| getPath(): [Path] _s # 41| getSegment(): [PathSegment] _s diff --git a/rust/ql/test/extractor-tests/macro-expansion/test.expected b/rust/ql/test/extractor-tests/macro-expansion/test.expected index 5abff30113bc..f47a7455e916 100644 --- a/rust/ql/test/extractor-tests/macro-expansion/test.expected +++ b/rust/ql/test/extractor-tests/macro-expansion/test.expected @@ -26,12 +26,12 @@ macro_calls | macro_expansion.rs:31:5:31:16 | ...::format_args_nl!... | macro_expansion.rs:31:5:31:16 | FormatArgsExpr | | macro_expansion.rs:31:5:31:16 | ...::format_args_nl!... | macro_expansion.rs:31:5:31:16 | FormatArgsExpr | | macro_expansion.rs:31:5:31:16 | ...::format_args_nl!... | macro_expansion.rs:31:5:31:16 | FormatArgsExpr | -| macro_expansion.rs:31:5:31:16 | println!... | macro_expansion.rs:31:5:31:16 | MacroBlockExpr | -| macro_expansion.rs:31:5:31:16 | println!... | macro_expansion.rs:31:5:31:16 | MacroBlockExpr | -| macro_expansion.rs:31:5:31:16 | println!... | macro_expansion.rs:31:5:31:16 | MacroBlockExpr | -| macro_expansion.rs:33:9:33:16 | hello!... | macro_expansion.rs:31:5:31:16 | MacroBlockExpr | -| macro_expansion.rs:33:9:33:16 | hello!... | macro_expansion.rs:31:5:31:16 | MacroBlockExpr | -| macro_expansion.rs:33:9:33:16 | hello!... | macro_expansion.rs:31:5:31:16 | MacroBlockExpr | +| macro_expansion.rs:31:5:31:16 | println!... | macro_expansion.rs:31:5:31:16 | { ... } | +| macro_expansion.rs:31:5:31:16 | println!... | macro_expansion.rs:31:5:31:16 | { ... } | +| macro_expansion.rs:31:5:31:16 | println!... | macro_expansion.rs:31:5:31:16 | { ... } | +| macro_expansion.rs:33:9:33:16 | hello!... | macro_expansion.rs:31:5:31:16 | { ... } | +| macro_expansion.rs:33:9:33:16 | hello!... | macro_expansion.rs:31:5:31:16 | { ... } | +| macro_expansion.rs:33:9:33:16 | hello!... | macro_expansion.rs:31:5:31:16 | { ... } | | macro_expansion.rs:44:5:44:13 | def_x!... | macro_expansion.rs:44:5:44:10 | MacroItems | | macro_expansion.rs:53:9:53:25 | concat!... | macro_expansion.rs:53:17:53:24 | "xy" | | macro_expansion.rs:55:9:58:5 | my_macro!... | macro_expansion.rs:56:9:57:13 | MacroExpr | diff --git a/rust/ql/test/library-tests/controlflow/Cfg.expected b/rust/ql/test/library-tests/controlflow/Cfg.expected index d8b2972ca525..ef97a3b628f7 100644 --- a/rust/ql/test/library-tests/controlflow/Cfg.expected +++ b/rust/ql/test/library-tests/controlflow/Cfg.expected @@ -400,9 +400,9 @@ edges | test.rs:171:26:171:28 | ...::format_args_nl!... | test.rs:171:26:171:28 | MacroExpr | | | test.rs:171:26:171:28 | ExprStmt | test.rs:171:17:171:24 | ...::_print | | | test.rs:171:26:171:28 | FormatArgsExpr | test.rs:171:26:171:28 | ...::format_args_nl!... | | -| test.rs:171:26:171:28 | MacroBlockExpr | test.rs:171:17:171:29 | println!... | | | test.rs:171:26:171:28 | MacroExpr | test.rs:171:26:171:28 | ...::_print(...) | | -| test.rs:171:26:171:28 | { ... } | test.rs:171:26:171:28 | MacroBlockExpr | | +| test.rs:171:26:171:28 | { ... } | test.rs:171:17:171:29 | println!... | | +| test.rs:171:26:171:28 | { ... } | test.rs:171:26:171:28 | { ... } | | | test.rs:172:20:174:13 | { ... } | test.rs:170:13:174:13 | if cond2 {...} else {...} | | | test.rs:173:17:173:24 | ...::_print | test.rs:173:26:173:28 | "2\\n" | | | test.rs:173:17:173:29 | MacroExpr | test.rs:172:20:174:13 | { ... } | | @@ -413,9 +413,9 @@ edges | test.rs:173:26:173:28 | ...::format_args_nl!... | test.rs:173:26:173:28 | MacroExpr | | | test.rs:173:26:173:28 | ExprStmt | test.rs:173:17:173:24 | ...::_print | | | test.rs:173:26:173:28 | FormatArgsExpr | test.rs:173:26:173:28 | ...::format_args_nl!... | | -| test.rs:173:26:173:28 | MacroBlockExpr | test.rs:173:17:173:29 | println!... | | | test.rs:173:26:173:28 | MacroExpr | test.rs:173:26:173:28 | ...::_print(...) | | -| test.rs:173:26:173:28 | { ... } | test.rs:173:26:173:28 | MacroBlockExpr | | +| test.rs:173:26:173:28 | { ... } | test.rs:173:17:173:29 | println!... | | +| test.rs:173:26:173:28 | { ... } | test.rs:173:26:173:28 | { ... } | | | test.rs:175:13:175:20 | ...::_print | test.rs:175:22:175:24 | "3\\n" | | | test.rs:175:13:175:25 | MacroExpr | test.rs:169:18:176:9 | { ... } | | | test.rs:175:13:175:25 | println!... | test.rs:175:13:175:25 | MacroExpr | | @@ -425,9 +425,9 @@ edges | test.rs:175:22:175:24 | ...::format_args_nl!... | test.rs:175:22:175:24 | MacroExpr | | | test.rs:175:22:175:24 | ExprStmt | test.rs:175:13:175:20 | ...::_print | | | test.rs:175:22:175:24 | FormatArgsExpr | test.rs:175:22:175:24 | ...::format_args_nl!... | | -| test.rs:175:22:175:24 | MacroBlockExpr | test.rs:175:13:175:25 | println!... | | | test.rs:175:22:175:24 | MacroExpr | test.rs:175:22:175:24 | ...::_print(...) | | -| test.rs:175:22:175:24 | { ... } | test.rs:175:22:175:24 | MacroBlockExpr | | +| test.rs:175:22:175:24 | { ... } | test.rs:175:13:175:25 | println!... | | +| test.rs:175:22:175:24 | { ... } | test.rs:175:22:175:24 | { ... } | | | test.rs:179:5:188:5 | enter fn test_nested_if_match | test.rs:179:29:179:29 | a | | | test.rs:179:5:188:5 | exit fn test_nested_if_match (normal) | test.rs:179:5:188:5 | exit fn test_nested_if_match | | | test.rs:179:29:179:29 | a | test.rs:179:29:179:29 | a | | @@ -905,11 +905,11 @@ edges | test.rs:363:39:363:53 | ...::panic_fmt(...) | test.rs:363:39:363:53 | { ... } | | | test.rs:363:39:363:53 | ExprStmt | test.rs:363:32:363:37 | ...::panic_fmt | | | test.rs:363:39:363:53 | FormatArgsExpr | test.rs:363:39:363:53 | ...::const_format_args!... | | -| test.rs:363:39:363:53 | MacroBlockExpr | test.rs:363:32:363:54 | panic!... | | -| test.rs:363:39:363:53 | MacroBlockExpr | test.rs:363:39:363:53 | ...::panic_2021!... | | | test.rs:363:39:363:53 | MacroExpr | test.rs:363:39:363:53 | ...::panic_fmt(...) | | -| test.rs:363:39:363:53 | MacroExpr | test.rs:363:39:363:53 | MacroBlockExpr | | -| test.rs:363:39:363:53 | { ... } | test.rs:363:39:363:53 | MacroBlockExpr | | +| test.rs:363:39:363:53 | MacroExpr | test.rs:363:39:363:53 | { ... } | | +| test.rs:363:39:363:53 | { ... } | test.rs:363:32:363:54 | panic!... | | +| test.rs:363:39:363:53 | { ... } | test.rs:363:39:363:53 | ...::panic_2021!... | | +| test.rs:363:39:363:53 | { ... } | test.rs:363:39:363:53 | { ... } | | | test.rs:364:9:364:9 | n | test.rs:362:46:365:5 | { ... } | | | test.rs:367:5:373:5 | enter fn test_let_with_return | test.rs:367:29:367:29 | m | | | test.rs:367:5:373:5 | exit fn test_let_with_return (normal) | test.rs:367:5:373:5 | exit fn test_let_with_return | | @@ -1190,9 +1190,9 @@ edges | test.rs:495:18:495:32 | ...::format_args_nl!... | test.rs:495:18:495:32 | MacroExpr | | | test.rs:495:18:495:32 | ExprStmt | test.rs:495:9:495:16 | ...::_print | | | test.rs:495:18:495:32 | FormatArgsExpr | test.rs:495:18:495:32 | ...::format_args_nl!... | | -| test.rs:495:18:495:32 | MacroBlockExpr | test.rs:495:9:495:33 | println!... | | | test.rs:495:18:495:32 | MacroExpr | test.rs:495:18:495:32 | ...::_print(...) | | -| test.rs:495:18:495:32 | { ... } | test.rs:495:18:495:32 | MacroBlockExpr | | +| test.rs:495:18:495:32 | { ... } | test.rs:495:9:495:33 | println!... | | +| test.rs:495:18:495:32 | { ... } | test.rs:495:18:495:32 | { ... } | | | test.rs:498:5:517:5 | enter fn async_block | test.rs:498:26:498:26 | b | | | test.rs:498:5:517:5 | exit fn async_block (normal) | test.rs:498:5:517:5 | exit fn async_block | | | test.rs:498:26:498:26 | b | test.rs:498:26:498:26 | b | | @@ -1214,9 +1214,9 @@ edges | test.rs:500:22:500:40 | ...::format_args_nl!... | test.rs:500:22:500:40 | MacroExpr | | | test.rs:500:22:500:40 | ExprStmt | test.rs:500:13:500:20 | ...::_print | | | test.rs:500:22:500:40 | FormatArgsExpr | test.rs:500:22:500:40 | ...::format_args_nl!... | | -| test.rs:500:22:500:40 | MacroBlockExpr | test.rs:500:13:500:41 | println!... | | | test.rs:500:22:500:40 | MacroExpr | test.rs:500:22:500:40 | ...::_print(...) | | -| test.rs:500:22:500:40 | { ... } | test.rs:500:22:500:40 | MacroBlockExpr | | +| test.rs:500:22:500:40 | { ... } | test.rs:500:13:500:41 | println!... | | +| test.rs:500:22:500:40 | { ... } | test.rs:500:22:500:40 | { ... } | | | test.rs:502:9:504:10 | let ... = ... | test.rs:502:31:504:9 | { ... } | | | test.rs:502:13:502:27 | say_how_are_you | test.rs:502:13:502:27 | say_how_are_you | | | test.rs:502:13:502:27 | say_how_are_you | test.rs:505:9:505:28 | let ... = ... | match | @@ -1232,9 +1232,9 @@ edges | test.rs:503:22:503:35 | ...::format_args_nl!... | test.rs:503:22:503:35 | MacroExpr | | | test.rs:503:22:503:35 | ExprStmt | test.rs:503:13:503:20 | ...::_print | | | test.rs:503:22:503:35 | FormatArgsExpr | test.rs:503:22:503:35 | ...::format_args_nl!... | | -| test.rs:503:22:503:35 | MacroBlockExpr | test.rs:503:13:503:36 | println!... | | | test.rs:503:22:503:35 | MacroExpr | test.rs:503:22:503:35 | ...::_print(...) | | -| test.rs:503:22:503:35 | { ... } | test.rs:503:22:503:35 | MacroBlockExpr | | +| test.rs:503:22:503:35 | { ... } | test.rs:503:13:503:36 | println!... | | +| test.rs:503:22:503:35 | { ... } | test.rs:503:22:503:35 | { ... } | | | test.rs:505:9:505:28 | let ... = ... | test.rs:505:20:505:27 | { ... } | | | test.rs:505:13:505:16 | noop | test.rs:505:13:505:16 | noop | | | test.rs:505:13:505:16 | noop | test.rs:506:9:506:26 | ExprStmt | match | @@ -1293,15 +1293,15 @@ edges | test.rs:533:13:533:19 | ...::panic_explicit(...) | test.rs:533:13:533:19 | { ... } | | | test.rs:533:13:533:19 | ExprStmt | test.rs:533:13:533:19 | fn panic_cold_explicit | | | test.rs:533:13:533:19 | ExprStmt | test.rs:533:13:533:19 | panic_cold_explicit | | -| test.rs:533:13:533:19 | MacroBlockExpr | test.rs:533:13:533:19 | ...::panic_2021!... | | | test.rs:533:13:533:19 | MacroExpr | test.rs:533:13:533:19 | { ... } | | | test.rs:533:13:533:19 | enter fn panic_cold_explicit | test.rs:533:13:533:19 | ...::panic_explicit | | | test.rs:533:13:533:19 | exit fn panic_cold_explicit (normal) | test.rs:533:13:533:19 | exit fn panic_cold_explicit | | | test.rs:533:13:533:19 | fn panic_cold_explicit | test.rs:533:13:533:19 | ExprStmt | | | test.rs:533:13:533:19 | panic_cold_explicit | test.rs:533:13:533:19 | panic_cold_explicit(...) | | | test.rs:533:13:533:19 | panic_cold_explicit(...) | test.rs:533:13:533:19 | { ... } | | -| test.rs:533:13:533:19 | { ... } | test.rs:533:13:533:19 | MacroBlockExpr | | +| test.rs:533:13:533:19 | { ... } | test.rs:533:13:533:19 | ...::panic_2021!... | | | test.rs:533:13:533:19 | { ... } | test.rs:533:13:533:19 | exit fn panic_cold_explicit (normal) | | +| test.rs:533:13:533:19 | { ... } | test.rs:533:13:533:19 | { ... } | | | test.rs:533:13:533:19 | { ... } | test.rs:533:21:533:48 | if ... {...} | | | test.rs:533:13:533:49 | MacroExpr | test.rs:532:9:534:9 | { ... } | | | test.rs:533:13:533:49 | assert!... | test.rs:533:13:533:49 | MacroExpr | | @@ -1310,11 +1310,11 @@ edges | test.rs:533:21:533:44 | ...::size_of::<...>(...) | test.rs:533:48:533:48 | 0 | | | test.rs:533:21:533:48 | ... > ... | test.rs:533:21:533:48 | [boolean(false)] ! ... | true | | test.rs:533:21:533:48 | ... > ... | test.rs:533:21:533:48 | [boolean(true)] ! ... | false | -| test.rs:533:21:533:48 | MacroBlockExpr | test.rs:533:13:533:49 | assert!... | | | test.rs:533:21:533:48 | [boolean(false)] ! ... | test.rs:533:21:533:48 | if ... {...} | false | | test.rs:533:21:533:48 | [boolean(true)] ! ... | test.rs:533:13:533:19 | ExprStmt | true | | test.rs:533:21:533:48 | if ... {...} | test.rs:533:21:533:48 | { ... } | | -| test.rs:533:21:533:48 | { ... } | test.rs:533:21:533:48 | MacroBlockExpr | | +| test.rs:533:21:533:48 | { ... } | test.rs:533:13:533:49 | assert!... | | +| test.rs:533:21:533:48 | { ... } | test.rs:533:21:533:48 | { ... } | | | test.rs:533:48:533:48 | 0 | test.rs:533:21:533:48 | ... > ... | | | test.rs:536:9:536:10 | 42 | test.rs:529:41:537:5 | { ... } | | | test.rs:539:5:548:5 | enter fn const_block_panic | test.rs:540:9:540:30 | Const | | diff --git a/rust/ql/test/library-tests/dataflow/local/DataFlowStep.expected b/rust/ql/test/library-tests/dataflow/local/DataFlowStep.expected index 8c205afe5692..b0c11770a8e6 100644 --- a/rust/ql/test/library-tests/dataflow/local/DataFlowStep.expected +++ b/rust/ql/test/library-tests/dataflow/local/DataFlowStep.expected @@ -11,17 +11,17 @@ localStep | main.rs:7:9:7:9 | s | main.rs:7:9:7:9 | s | | main.rs:7:9:7:14 | ...: i64 | main.rs:7:9:7:9 | s | | main.rs:8:14:8:20 | FormatArgsExpr | main.rs:8:14:8:20 | MacroExpr | -| main.rs:8:14:8:20 | MacroBlockExpr | main.rs:8:5:8:21 | MacroExpr | | main.rs:8:14:8:20 | [post] MacroExpr | main.rs:8:14:8:20 | [post] FormatArgsExpr | -| main.rs:8:14:8:20 | { ... } | main.rs:8:14:8:20 | MacroBlockExpr | +| main.rs:8:14:8:20 | { ... } | main.rs:8:5:8:21 | MacroExpr | +| main.rs:8:14:8:20 | { ... } | main.rs:8:14:8:20 | { ... } | | main.rs:11:13:11:14 | [SSA] sr | main.rs:12:20:12:21 | sr | | main.rs:11:13:11:14 | sr | main.rs:11:13:11:14 | [SSA] sr | | main.rs:11:13:11:14 | sr | main.rs:11:13:11:14 | sr | | main.rs:11:13:11:20 | ...: ... | main.rs:11:13:11:14 | sr | | main.rs:12:14:12:21 | FormatArgsExpr | main.rs:12:14:12:21 | MacroExpr | -| main.rs:12:14:12:21 | MacroBlockExpr | main.rs:12:5:12:22 | MacroExpr | | main.rs:12:14:12:21 | [post] MacroExpr | main.rs:12:14:12:21 | [post] FormatArgsExpr | -| main.rs:12:14:12:21 | { ... } | main.rs:12:14:12:21 | MacroBlockExpr | +| main.rs:12:14:12:21 | { ... } | main.rs:12:5:12:22 | MacroExpr | +| main.rs:12:14:12:21 | { ... } | main.rs:12:14:12:21 | { ... } | | main.rs:23:9:23:9 | [SSA] s | main.rs:24:10:24:10 | s | | main.rs:23:9:23:9 | s | main.rs:23:9:23:9 | [SSA] s | | main.rs:23:9:23:9 | s | main.rs:23:9:23:9 | s | @@ -697,9 +697,9 @@ localStep | main.rs:500:16:500:16 | s | main.rs:500:16:500:16 | s | | main.rs:500:16:500:24 | ...: String | main.rs:500:16:500:16 | s | | main.rs:501:14:501:20 | FormatArgsExpr | main.rs:501:14:501:20 | MacroExpr | -| main.rs:501:14:501:20 | MacroBlockExpr | main.rs:501:5:501:21 | MacroExpr | | main.rs:501:14:501:20 | [post] MacroExpr | main.rs:501:14:501:20 | [post] FormatArgsExpr | -| main.rs:501:14:501:20 | { ... } | main.rs:501:14:501:20 | MacroBlockExpr | +| main.rs:501:14:501:20 | { ... } | main.rs:501:5:501:21 | MacroExpr | +| main.rs:501:14:501:20 | { ... } | main.rs:501:14:501:20 | { ... } | | main.rs:505:9:505:9 | [SSA] a | main.rs:506:13:506:13 | a | | main.rs:505:9:505:9 | a | main.rs:505:9:505:9 | [SSA] a | | main.rs:505:9:505:9 | a | main.rs:505:9:505:9 | a | diff --git a/rust/ql/test/library-tests/type-inference/type-inference.expected b/rust/ql/test/library-tests/type-inference/type-inference.expected index a93284881564..7022afff3ce2 100644 --- a/rust/ql/test/library-tests/type-inference/type-inference.expected +++ b/rust/ql/test/library-tests/type-inference/type-inference.expected @@ -4561,10 +4561,12 @@ inferType | blanket_impl.rs:46:13:46:14 | x1 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:46:18:46:19 | S1 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:46:18:46:28 | S1.clone1() | | blanket_impl.rs:6:5:7:14 | S1 | +| blanket_impl.rs:47:9:47:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:47:18:47:25 | "{x1:?}\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:47:18:47:25 | "{x1:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:47:18:47:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:47:18:47:25 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:47:18:47:25 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:47:20:47:21 | x1 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:48:13:48:14 | x2 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:48:18:48:22 | (...) | | {EXTERNAL LOCATION} | & | @@ -4573,18 +4575,22 @@ inferType | blanket_impl.rs:48:19:48:21 | &S1 | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:48:19:48:21 | &S1 | TRef | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:48:20:48:21 | S1 | | blanket_impl.rs:6:5:7:14 | S1 | +| blanket_impl.rs:49:9:49:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:49:18:49:25 | "{x2:?}\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:49:18:49:25 | "{x2:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:49:18:49:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:49:18:49:25 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:49:18:49:25 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:49:20:49:21 | x2 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:50:13:50:14 | x3 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:50:18:50:19 | S1 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:50:18:50:31 | S1.duplicate() | | blanket_impl.rs:6:5:7:14 | S1 | +| blanket_impl.rs:51:9:51:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:51:18:51:25 | "{x3:?}\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:51:18:51:25 | "{x3:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:51:18:51:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:51:18:51:25 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:51:18:51:25 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:51:20:51:21 | x3 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:52:13:52:14 | x4 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:52:18:52:22 | (...) | | {EXTERNAL LOCATION} | & | @@ -4593,28 +4599,34 @@ inferType | blanket_impl.rs:52:19:52:21 | &S1 | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:52:19:52:21 | &S1 | TRef | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:52:20:52:21 | S1 | | blanket_impl.rs:6:5:7:14 | S1 | +| blanket_impl.rs:53:9:53:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:53:18:53:25 | "{x4:?}\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:53:18:53:25 | "{x4:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:53:18:53:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:53:18:53:25 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:53:18:53:25 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:53:20:53:21 | x4 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:54:13:54:14 | x5 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:54:18:54:35 | ...::duplicate(...) | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:54:32:54:34 | &S1 | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:54:32:54:34 | &S1 | TRef | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:54:33:54:34 | S1 | | blanket_impl.rs:6:5:7:14 | S1 | +| blanket_impl.rs:55:9:55:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:55:18:55:25 | "{x5:?}\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:55:18:55:25 | "{x5:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:55:18:55:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:55:18:55:25 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:55:18:55:25 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:55:20:55:21 | x5 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:56:13:56:14 | x6 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:56:18:56:19 | S2 | | blanket_impl.rs:9:5:10:14 | S2 | | blanket_impl.rs:56:18:56:31 | S2.duplicate() | | blanket_impl.rs:6:5:7:14 | S1 | +| blanket_impl.rs:57:9:57:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:57:18:57:25 | "{x6:?}\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:57:18:57:25 | "{x6:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:57:18:57:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:57:18:57:25 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:57:18:57:25 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:57:20:57:21 | x6 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:58:13:58:14 | x7 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:58:18:58:22 | (...) | | {EXTERNAL LOCATION} | & | @@ -4623,10 +4635,12 @@ inferType | blanket_impl.rs:58:19:58:21 | &S2 | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:58:19:58:21 | &S2 | TRef | blanket_impl.rs:9:5:10:14 | S2 | | blanket_impl.rs:58:20:58:21 | S2 | | blanket_impl.rs:9:5:10:14 | S2 | +| blanket_impl.rs:59:9:59:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:59:18:59:25 | "{x7:?}\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:59:18:59:25 | "{x7:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:59:18:59:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:59:18:59:25 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:59:18:59:25 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:59:20:59:21 | x7 | | blanket_impl.rs:6:5:7:14 | S1 | | blanket_impl.rs:68:24:68:24 | x | | {EXTERNAL LOCATION} | i64 | | blanket_impl.rs:68:32:68:32 | y | | blanket_impl.rs:67:5:69:5 | Self [trait Trait1] | @@ -4647,37 +4661,45 @@ inferType | blanket_impl.rs:90:18:90:39 | ...::assoc_func1(...) | | blanket_impl.rs:64:5:65:14 | S1 | | blanket_impl.rs:90:34:90:34 | 1 | | {EXTERNAL LOCATION} | i32 | | blanket_impl.rs:90:37:90:38 | S1 | | blanket_impl.rs:64:5:65:14 | S1 | +| blanket_impl.rs:91:9:91:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:91:18:91:25 | "{x1:?}\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:91:18:91:25 | "{x1:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:91:18:91:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:91:18:91:25 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:91:18:91:25 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:91:20:91:21 | x1 | | blanket_impl.rs:64:5:65:14 | S1 | | blanket_impl.rs:92:13:92:14 | x2 | | blanket_impl.rs:64:5:65:14 | S1 | | blanket_impl.rs:92:18:92:43 | ...::assoc_func1(...) | | blanket_impl.rs:64:5:65:14 | S1 | | blanket_impl.rs:92:38:92:38 | 1 | | {EXTERNAL LOCATION} | i32 | | blanket_impl.rs:92:41:92:42 | S1 | | blanket_impl.rs:64:5:65:14 | S1 | +| blanket_impl.rs:93:9:93:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:93:18:93:25 | "{x2:?}\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:93:18:93:25 | "{x2:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:93:18:93:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:93:18:93:25 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:93:18:93:25 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:93:20:93:21 | x2 | | blanket_impl.rs:64:5:65:14 | S1 | | blanket_impl.rs:94:13:94:14 | x3 | | blanket_impl.rs:64:5:65:14 | S1 | | blanket_impl.rs:94:18:94:39 | ...::assoc_func2(...) | | blanket_impl.rs:64:5:65:14 | S1 | | blanket_impl.rs:94:34:94:34 | 1 | | {EXTERNAL LOCATION} | i32 | | blanket_impl.rs:94:37:94:38 | S1 | | blanket_impl.rs:64:5:65:14 | S1 | +| blanket_impl.rs:95:9:95:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:95:18:95:25 | "{x3:?}\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:95:18:95:25 | "{x3:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:95:18:95:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:95:18:95:25 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:95:18:95:25 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:95:20:95:21 | x3 | | blanket_impl.rs:64:5:65:14 | S1 | | blanket_impl.rs:96:13:96:14 | x4 | | blanket_impl.rs:64:5:65:14 | S1 | | blanket_impl.rs:96:18:96:43 | ...::assoc_func2(...) | | blanket_impl.rs:64:5:65:14 | S1 | | blanket_impl.rs:96:38:96:38 | 1 | | {EXTERNAL LOCATION} | i32 | | blanket_impl.rs:96:41:96:42 | S1 | | blanket_impl.rs:64:5:65:14 | S1 | +| blanket_impl.rs:97:9:97:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:97:18:97:25 | "{x4:?}\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:97:18:97:25 | "{x4:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:97:18:97:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:97:18:97:25 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:97:18:97:25 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:97:20:97:21 | x4 | | blanket_impl.rs:64:5:65:14 | S1 | | blanket_impl.rs:108:22:108:26 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:108:22:108:26 | SelfParam | TRef | blanket_impl.rs:107:5:109:5 | Self [trait Flag] | @@ -4827,18 +4849,22 @@ inferType | blanket_impl.rs:277:21:277:25 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:277:21:277:25 | SelfParam | TRef | blanket_impl.rs:276:10:276:22 | T | | blanket_impl.rs:277:28:279:9 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:278:13:278:42 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:278:22:278:41 | "Executor::execute1\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:278:22:278:41 | "Executor::execute1\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:278:22:278:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:278:22:278:41 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:278:22:278:41 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:281:24:281:28 | SelfParam | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:281:24:281:28 | SelfParam | TRef | blanket_impl.rs:276:10:276:22 | T | | blanket_impl.rs:281:31:281:36 | _query | | blanket_impl.rs:281:21:281:21 | E | | blanket_impl.rs:281:42:283:9 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:282:13:282:42 | MacroExpr | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:282:22:282:41 | "Executor::execute2\\n" | | {EXTERNAL LOCATION} | & | | blanket_impl.rs:282:22:282:41 | "Executor::execute2\\n" | TRef | {EXTERNAL LOCATION} | str | | blanket_impl.rs:282:22:282:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:282:22:282:41 | { ... } | | {EXTERNAL LOCATION} | () | +| blanket_impl.rs:282:22:282:41 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:290:16:300:5 | { ... } | | {EXTERNAL LOCATION} | () | | blanket_impl.rs:291:13:291:13 | c | | blanket_impl.rs:286:5:286:29 | MySqlConnection | | blanket_impl.rs:291:17:291:34 | MySqlConnection {...} | | blanket_impl.rs:286:5:286:29 | MySqlConnection | @@ -5444,7 +5470,7 @@ inferType | dereference.rs:214:22:214:38 | "In struct impl!\\n" | | {EXTERNAL LOCATION} | & | | dereference.rs:214:22:214:38 | "In struct impl!\\n" | TRef | {EXTERNAL LOCATION} | str | | dereference.rs:214:22:214:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| dereference.rs:214:22:214:38 | MacroBlockExpr | | {EXTERNAL LOCATION} | () | +| dereference.rs:214:22:214:38 | { ... } | | {EXTERNAL LOCATION} | () | | dereference.rs:214:22:214:38 | { ... } | | {EXTERNAL LOCATION} | () | | dereference.rs:220:16:220:20 | SelfParam | | {EXTERNAL LOCATION} | & | | dereference.rs:220:16:220:20 | SelfParam | TRef | dereference.rs:205:5:205:17 | Foo | @@ -5453,7 +5479,7 @@ inferType | dereference.rs:221:22:221:37 | "In trait impl!\\n" | | {EXTERNAL LOCATION} | & | | dereference.rs:221:22:221:37 | "In trait impl!\\n" | TRef | {EXTERNAL LOCATION} | str | | dereference.rs:221:22:221:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | -| dereference.rs:221:22:221:37 | MacroBlockExpr | | {EXTERNAL LOCATION} | () | +| dereference.rs:221:22:221:37 | { ... } | | {EXTERNAL LOCATION} | () | | dereference.rs:221:22:221:37 | { ... } | | {EXTERNAL LOCATION} | () | | dereference.rs:225:19:228:5 | { ... } | | {EXTERNAL LOCATION} | () | | dereference.rs:226:17:226:17 | f | | dereference.rs:205:5:205:17 | Foo | @@ -5483,7 +5509,7 @@ inferType | dyn_type.rs:29:17:29:30 | "MyTrait1: {}" | TRef | {EXTERNAL LOCATION} | str | | dyn_type.rs:29:17:29:42 | ...::format(...) | | {EXTERNAL LOCATION} | String | | dyn_type.rs:29:17:29:42 | ...::must_use(...) | | {EXTERNAL LOCATION} | String | -| dyn_type.rs:29:17:29:42 | MacroBlockExpr | | {EXTERNAL LOCATION} | String | +| dyn_type.rs:29:17:29:42 | { ... } | | {EXTERNAL LOCATION} | String | | dyn_type.rs:29:17:29:42 | { ... } | | {EXTERNAL LOCATION} | String | | dyn_type.rs:29:33:29:36 | self | | {EXTERNAL LOCATION} | & | | dyn_type.rs:29:33:29:36 | self | TRef | dyn_type.rs:21:1:24:1 | MyStruct | @@ -5737,10 +5763,12 @@ inferType | main.rs:26:13:26:13 | x | | main.rs:5:5:8:5 | MyThing | | main.rs:26:17:26:32 | MyThing {...} | | main.rs:5:5:8:5 | MyThing | | main.rs:26:30:26:30 | S | | main.rs:3:5:4:13 | S | +| main.rs:27:9:27:29 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:27:18:27:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:27:18:27:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:27:18:27:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:27:18:27:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:27:18:27:28 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:27:26:27:26 | x | | main.rs:5:5:8:5 | MyThing | | main.rs:27:26:27:28 | x.a | | main.rs:3:5:4:13 | S | | main.rs:30:29:30:29 | x | | main.rs:16:5:19:5 | GenericThing | @@ -5750,10 +5778,12 @@ inferType | main.rs:31:17:31:17 | x | | main.rs:16:5:19:5 | GenericThing | | main.rs:31:17:31:17 | x | A | {EXTERNAL LOCATION} | bool | | main.rs:31:17:31:19 | x.a | | {EXTERNAL LOCATION} | bool | +| main.rs:32:9:32:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:32:18:32:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:32:18:32:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:32:18:32:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:32:18:32:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:32:18:32:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:32:26:32:26 | a | | {EXTERNAL LOCATION} | bool | | main.rs:35:31:63:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:37:13:37:13 | x | | main.rs:16:5:19:5 | GenericThing | @@ -5761,10 +5791,12 @@ inferType | main.rs:37:17:37:42 | GenericThing::<...> {...} | | main.rs:16:5:19:5 | GenericThing | | main.rs:37:17:37:42 | GenericThing::<...> {...} | A | main.rs:3:5:4:13 | S | | main.rs:37:40:37:40 | S | | main.rs:3:5:4:13 | S | +| main.rs:38:9:38:29 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:38:18:38:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:38:18:38:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:38:18:38:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:38:18:38:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:38:18:38:28 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:38:26:38:26 | x | | main.rs:16:5:19:5 | GenericThing | | main.rs:38:26:38:26 | x | A | main.rs:3:5:4:13 | S | | main.rs:38:26:38:28 | x.a | | main.rs:3:5:4:13 | S | @@ -5773,10 +5805,12 @@ inferType | main.rs:41:17:41:37 | GenericThing {...} | | main.rs:16:5:19:5 | GenericThing | | main.rs:41:17:41:37 | GenericThing {...} | A | main.rs:3:5:4:13 | S | | main.rs:41:35:41:35 | S | | main.rs:3:5:4:13 | S | +| main.rs:42:9:42:29 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:42:18:42:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:42:18:42:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:42:18:42:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:42:18:42:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:42:18:42:28 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:42:26:42:26 | x | | main.rs:16:5:19:5 | GenericThing | | main.rs:42:26:42:26 | x | A | main.rs:3:5:4:13 | S | | main.rs:42:26:42:28 | x.a | | main.rs:3:5:4:13 | S | @@ -5784,10 +5818,12 @@ inferType | main.rs:46:17:48:9 | OptionS {...} | | main.rs:21:5:23:5 | OptionS | | main.rs:47:16:47:33 | ...::MyNone(...) | | main.rs:10:5:14:5 | MyOption | | main.rs:47:16:47:33 | ...::MyNone(...) | T | main.rs:3:5:4:13 | S | +| main.rs:49:9:49:29 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:49:18:49:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:49:18:49:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:49:18:49:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:49:18:49:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:49:18:49:28 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:49:26:49:26 | x | | main.rs:21:5:23:5 | OptionS | | main.rs:49:26:49:28 | x.a | | main.rs:10:5:14:5 | MyOption | | main.rs:49:26:49:28 | x.a | T | main.rs:3:5:4:13 | S | @@ -5799,10 +5835,12 @@ inferType | main.rs:52:17:54:9 | GenericThing::<...> {...} | A.T | main.rs:3:5:4:13 | S | | main.rs:53:16:53:33 | ...::MyNone(...) | | main.rs:10:5:14:5 | MyOption | | main.rs:53:16:53:33 | ...::MyNone(...) | T | main.rs:3:5:4:13 | S | +| main.rs:55:9:55:29 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:55:18:55:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:55:18:55:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:55:18:55:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:55:18:55:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:55:18:55:28 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:55:26:55:26 | x | | main.rs:16:5:19:5 | GenericThing | | main.rs:55:26:55:26 | x | A | main.rs:10:5:14:5 | MyOption | | main.rs:55:26:55:26 | x | A.T | main.rs:3:5:4:13 | S | @@ -5823,10 +5861,12 @@ inferType | main.rs:61:30:61:30 | x | A.T | main.rs:3:5:4:13 | S | | main.rs:61:30:61:32 | x.a | | main.rs:10:5:14:5 | MyOption | | main.rs:61:30:61:32 | x.a | T | main.rs:3:5:4:13 | S | +| main.rs:62:9:62:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:62:18:62:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:62:18:62:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:62:18:62:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:62:18:62:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:62:18:62:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:62:26:62:26 | a | | main.rs:10:5:14:5 | MyOption | | main.rs:62:26:62:26 | a | T | main.rs:3:5:4:13 | S | | main.rs:65:16:68:5 | { ... } | | {EXTERNAL LOCATION} | () | @@ -5839,10 +5879,12 @@ inferType | main.rs:79:32:81:9 | { ... } | | main.rs:72:5:72:21 | Foo | | main.rs:80:13:80:16 | self | | main.rs:72:5:72:21 | Foo | | main.rs:84:23:89:5 | { ... } | | main.rs:72:5:72:21 | Foo | +| main.rs:85:9:85:34 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:85:18:85:33 | "main.rs::m1::f\\n" | | {EXTERNAL LOCATION} | & | | main.rs:85:18:85:33 | "main.rs::m1::f\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:85:18:85:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:85:18:85:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:85:18:85:33 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:86:13:86:13 | x | | main.rs:72:5:72:21 | Foo | | main.rs:86:17:86:22 | Foo {...} | | main.rs:72:5:72:21 | Foo | | main.rs:87:13:87:13 | y | | main.rs:72:5:72:21 | Foo | @@ -5851,10 +5893,12 @@ inferType | main.rs:91:14:91:14 | x | | main.rs:72:5:72:21 | Foo | | main.rs:91:22:91:22 | y | | main.rs:72:5:72:21 | Foo | | main.rs:91:37:95:5 | { ... } | | main.rs:72:5:72:21 | Foo | +| main.rs:92:9:92:34 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:92:18:92:33 | "main.rs::m1::g\\n" | | {EXTERNAL LOCATION} | & | | main.rs:92:18:92:33 | "main.rs::m1::g\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:92:18:92:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:92:18:92:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:92:18:92:33 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:93:9:93:9 | x | | main.rs:72:5:72:21 | Foo | | main.rs:93:9:93:14 | x.m1() | | main.rs:72:5:72:21 | Foo | | main.rs:94:9:94:9 | y | | main.rs:72:5:72:21 | Foo | @@ -5880,17 +5924,21 @@ inferType | main.rs:130:25:130:29 | SelfParam | | {EXTERNAL LOCATION} | & | | main.rs:130:25:130:29 | SelfParam | TRef | main.rs:128:9:133:9 | Self [trait Foo] | | main.rs:130:32:132:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:131:17:131:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:131:26:131:31 | "foo!\\n" | | {EXTERNAL LOCATION} | & | | main.rs:131:26:131:31 | "foo!\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:131:26:131:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:131:26:131:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:131:26:131:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:137:25:137:29 | SelfParam | | {EXTERNAL LOCATION} | & | | main.rs:137:25:137:29 | SelfParam | TRef | main.rs:135:9:140:9 | Self [trait Bar] | | main.rs:137:32:139:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:138:17:138:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:138:26:138:31 | "bar!\\n" | | {EXTERNAL LOCATION} | & | | main.rs:138:26:138:31 | "bar!\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:138:26:138:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:138:26:138:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:138:26:138:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:149:15:170:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:150:13:150:13 | x | | main.rs:142:9:142:21 | X | | main.rs:150:17:150:17 | X | | main.rs:142:9:142:21 | X | @@ -5944,31 +5992,39 @@ inferType | main.rs:206:17:206:33 | MyThing {...} | | main.rs:174:5:177:5 | MyThing | | main.rs:206:17:206:33 | MyThing {...} | A | main.rs:181:5:182:14 | S2 | | main.rs:206:30:206:31 | S2 | | main.rs:181:5:182:14 | S2 | +| main.rs:209:9:209:29 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:209:18:209:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:209:18:209:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:209:18:209:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:209:18:209:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:209:18:209:28 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:209:26:209:26 | x | | main.rs:174:5:177:5 | MyThing | | main.rs:209:26:209:26 | x | A | main.rs:179:5:180:14 | S1 | | main.rs:209:26:209:28 | x.a | | main.rs:179:5:180:14 | S1 | +| main.rs:210:9:210:29 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:210:18:210:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:210:18:210:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:210:18:210:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:210:18:210:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:210:18:210:28 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:210:26:210:26 | y | | main.rs:174:5:177:5 | MyThing | | main.rs:210:26:210:26 | y | A | main.rs:181:5:182:14 | S2 | | main.rs:210:26:210:28 | y.a | | main.rs:181:5:182:14 | S2 | +| main.rs:212:9:212:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:212:18:212:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:212:18:212:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:212:18:212:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:212:18:212:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:212:18:212:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:212:26:212:26 | x | | main.rs:174:5:177:5 | MyThing | | main.rs:212:26:212:26 | x | A | main.rs:179:5:180:14 | S1 | | main.rs:212:26:212:31 | x.m1() | | main.rs:179:5:180:14 | S1 | +| main.rs:213:9:213:34 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:213:18:213:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:213:18:213:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:213:18:213:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:213:18:213:33 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:213:18:213:33 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:213:26:213:26 | y | | main.rs:174:5:177:5 | MyThing | | main.rs:213:26:213:26 | y | A | main.rs:181:5:182:14 | S2 | | main.rs:213:26:213:31 | y.m1() | | main.rs:174:5:177:5 | MyThing | @@ -5984,17 +6040,21 @@ inferType | main.rs:216:17:216:33 | MyThing {...} | | main.rs:174:5:177:5 | MyThing | | main.rs:216:17:216:33 | MyThing {...} | A | main.rs:181:5:182:14 | S2 | | main.rs:216:30:216:31 | S2 | | main.rs:181:5:182:14 | S2 | +| main.rs:218:9:218:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:218:18:218:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:218:18:218:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:218:18:218:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:218:18:218:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:218:18:218:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:218:26:218:26 | x | | main.rs:174:5:177:5 | MyThing | | main.rs:218:26:218:26 | x | A | main.rs:179:5:180:14 | S1 | | main.rs:218:26:218:31 | x.m2() | | main.rs:179:5:180:14 | S1 | +| main.rs:219:9:219:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:219:18:219:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:219:18:219:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:219:18:219:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:219:18:219:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:219:18:219:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:219:26:219:26 | y | | main.rs:174:5:177:5 | MyThing | | main.rs:219:26:219:26 | y | A | main.rs:181:5:182:14 | S2 | | main.rs:219:26:219:31 | y.m2() | | main.rs:181:5:182:14 | S2 | @@ -6134,17 +6194,21 @@ inferType | main.rs:374:24:374:40 | MyThing {...} | | main.rs:224:5:227:5 | MyThing | | main.rs:374:24:374:40 | MyThing {...} | A | main.rs:239:5:240:14 | S3 | | main.rs:374:37:374:38 | S3 | | main.rs:239:5:240:14 | S3 | +| main.rs:378:9:378:39 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:378:18:378:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:378:18:378:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:378:18:378:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:378:18:378:38 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:378:18:378:38 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:378:26:378:33 | thing_s1 | | main.rs:224:5:227:5 | MyThing | | main.rs:378:26:378:33 | thing_s1 | A | main.rs:235:5:236:14 | S1 | | main.rs:378:26:378:38 | thing_s1.m1() | | main.rs:235:5:236:14 | S1 | +| main.rs:379:9:379:41 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:379:18:379:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:379:18:379:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:379:18:379:40 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:379:18:379:40 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:379:18:379:40 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:379:26:379:33 | thing_s2 | | main.rs:224:5:227:5 | MyThing | | main.rs:379:26:379:33 | thing_s2 | A | main.rs:237:5:238:14 | S2 | | main.rs:379:26:379:38 | thing_s2.m1() | | main.rs:224:5:227:5 | MyThing | @@ -6154,10 +6218,12 @@ inferType | main.rs:380:22:380:29 | thing_s3 | | main.rs:224:5:227:5 | MyThing | | main.rs:380:22:380:29 | thing_s3 | A | main.rs:239:5:240:14 | S3 | | main.rs:380:22:380:34 | thing_s3.m1() | | main.rs:239:5:240:14 | S3 | +| main.rs:381:9:381:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:381:18:381:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:381:18:381:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:381:18:381:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:381:18:381:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:381:18:381:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:381:26:381:27 | s3 | | main.rs:239:5:240:14 | S3 | | main.rs:383:13:383:14 | p1 | | main.rs:229:5:233:5 | MyPair | | main.rs:383:13:383:14 | p1 | P1 | main.rs:235:5:236:14 | S1 | @@ -6167,10 +6233,12 @@ inferType | main.rs:383:18:383:42 | MyPair {...} | P2 | main.rs:235:5:236:14 | S1 | | main.rs:383:31:383:32 | S1 | | main.rs:235:5:236:14 | S1 | | main.rs:383:39:383:40 | S1 | | main.rs:235:5:236:14 | S1 | +| main.rs:384:9:384:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:384:18:384:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:384:18:384:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:384:18:384:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:384:18:384:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:384:18:384:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:384:26:384:27 | p1 | | main.rs:229:5:233:5 | MyPair | | main.rs:384:26:384:27 | p1 | P1 | main.rs:235:5:236:14 | S1 | | main.rs:384:26:384:27 | p1 | P2 | main.rs:235:5:236:14 | S1 | @@ -6183,10 +6251,12 @@ inferType | main.rs:386:18:386:42 | MyPair {...} | P2 | main.rs:237:5:238:14 | S2 | | main.rs:386:31:386:32 | S1 | | main.rs:235:5:236:14 | S1 | | main.rs:386:39:386:40 | S2 | | main.rs:237:5:238:14 | S2 | +| main.rs:387:9:387:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:387:18:387:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:387:18:387:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:387:18:387:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:387:18:387:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:387:18:387:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:387:26:387:27 | p2 | | main.rs:229:5:233:5 | MyPair | | main.rs:387:26:387:27 | p2 | P1 | main.rs:235:5:236:14 | S1 | | main.rs:387:26:387:27 | p2 | P2 | main.rs:237:5:238:14 | S2 | @@ -6203,10 +6273,12 @@ inferType | main.rs:390:17:390:33 | MyThing {...} | A | main.rs:235:5:236:14 | S1 | | main.rs:390:30:390:31 | S1 | | main.rs:235:5:236:14 | S1 | | main.rs:391:17:391:18 | S3 | | main.rs:239:5:240:14 | S3 | +| main.rs:393:9:393:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:393:18:393:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:393:18:393:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:393:18:393:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:393:18:393:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:393:18:393:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:393:26:393:27 | p3 | | main.rs:229:5:233:5 | MyPair | | main.rs:393:26:393:27 | p3 | P1 | main.rs:224:5:227:5 | MyThing | | main.rs:393:26:393:27 | p3 | P1.A | main.rs:235:5:236:14 | S1 | @@ -6225,20 +6297,24 @@ inferType | main.rs:397:17:397:17 | a | P1 | main.rs:235:5:236:14 | S1 | | main.rs:397:17:397:17 | a | P2 | main.rs:235:5:236:14 | S1 | | main.rs:397:17:397:23 | a.fst() | | main.rs:235:5:236:14 | S1 | +| main.rs:398:9:398:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:398:18:398:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:398:18:398:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:398:18:398:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:398:18:398:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:398:18:398:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:398:26:398:26 | x | | main.rs:235:5:236:14 | S1 | | main.rs:399:13:399:13 | y | | main.rs:235:5:236:14 | S1 | | main.rs:399:17:399:17 | a | | main.rs:229:5:233:5 | MyPair | | main.rs:399:17:399:17 | a | P1 | main.rs:235:5:236:14 | S1 | | main.rs:399:17:399:17 | a | P2 | main.rs:235:5:236:14 | S1 | | main.rs:399:17:399:23 | a.snd() | | main.rs:235:5:236:14 | S1 | +| main.rs:400:9:400:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:400:18:400:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:400:18:400:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:400:18:400:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:400:18:400:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:400:18:400:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:400:26:400:26 | y | | main.rs:235:5:236:14 | S1 | | main.rs:406:13:406:13 | b | | main.rs:229:5:233:5 | MyPair | | main.rs:406:13:406:13 | b | P1 | main.rs:237:5:238:14 | S2 | @@ -6253,29 +6329,35 @@ inferType | main.rs:407:17:407:17 | b | P1 | main.rs:237:5:238:14 | S2 | | main.rs:407:17:407:17 | b | P2 | main.rs:235:5:236:14 | S1 | | main.rs:407:17:407:23 | b.fst() | | main.rs:235:5:236:14 | S1 | +| main.rs:408:9:408:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:408:18:408:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:408:18:408:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:408:18:408:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:408:18:408:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:408:18:408:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:408:26:408:26 | x | | main.rs:235:5:236:14 | S1 | | main.rs:409:13:409:13 | y | | main.rs:237:5:238:14 | S2 | | main.rs:409:17:409:17 | b | | main.rs:229:5:233:5 | MyPair | | main.rs:409:17:409:17 | b | P1 | main.rs:237:5:238:14 | S2 | | main.rs:409:17:409:17 | b | P2 | main.rs:235:5:236:14 | S1 | | main.rs:409:17:409:23 | b.snd() | | main.rs:237:5:238:14 | S2 | +| main.rs:410:9:410:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:410:18:410:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:410:18:410:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:410:18:410:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:410:18:410:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:410:18:410:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:410:26:410:26 | y | | main.rs:237:5:238:14 | S2 | | main.rs:414:13:414:13 | x | | main.rs:235:5:236:14 | S1 | | main.rs:414:17:414:39 | call_trait_m1(...) | | main.rs:235:5:236:14 | S1 | | main.rs:414:31:414:38 | thing_s1 | | main.rs:224:5:227:5 | MyThing | | main.rs:414:31:414:38 | thing_s1 | A | main.rs:235:5:236:14 | S1 | +| main.rs:415:9:415:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:415:18:415:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:415:18:415:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:415:18:415:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:415:18:415:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:415:18:415:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:415:26:415:26 | x | | main.rs:235:5:236:14 | S1 | | main.rs:416:13:416:13 | y | | main.rs:224:5:227:5 | MyThing | | main.rs:416:13:416:13 | y | A | main.rs:237:5:238:14 | S2 | @@ -6283,10 +6365,12 @@ inferType | main.rs:416:17:416:39 | call_trait_m1(...) | A | main.rs:237:5:238:14 | S2 | | main.rs:416:31:416:38 | thing_s2 | | main.rs:224:5:227:5 | MyThing | | main.rs:416:31:416:38 | thing_s2 | A | main.rs:237:5:238:14 | S2 | +| main.rs:417:9:417:29 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:417:18:417:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:417:18:417:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:417:18:417:28 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:417:18:417:28 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:417:18:417:28 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:417:26:417:26 | y | | main.rs:224:5:227:5 | MyThing | | main.rs:417:26:417:26 | y | A | main.rs:237:5:238:14 | S2 | | main.rs:417:26:417:28 | y.a | | main.rs:237:5:238:14 | S2 | @@ -6303,20 +6387,24 @@ inferType | main.rs:421:25:421:25 | a | | main.rs:229:5:233:5 | MyPair | | main.rs:421:25:421:25 | a | P1 | main.rs:235:5:236:14 | S1 | | main.rs:421:25:421:25 | a | P2 | main.rs:235:5:236:14 | S1 | +| main.rs:422:9:422:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:422:18:422:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:422:18:422:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:422:18:422:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:422:18:422:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:422:18:422:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:422:26:422:26 | x | | main.rs:235:5:236:14 | S1 | | main.rs:423:13:423:13 | y | | main.rs:235:5:236:14 | S1 | | main.rs:423:17:423:26 | get_snd(...) | | main.rs:235:5:236:14 | S1 | | main.rs:423:25:423:25 | a | | main.rs:229:5:233:5 | MyPair | | main.rs:423:25:423:25 | a | P1 | main.rs:235:5:236:14 | S1 | | main.rs:423:25:423:25 | a | P2 | main.rs:235:5:236:14 | S1 | +| main.rs:424:9:424:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:424:18:424:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:424:18:424:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:424:18:424:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:424:18:424:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:424:18:424:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:424:26:424:26 | y | | main.rs:235:5:236:14 | S1 | | main.rs:427:13:427:13 | b | | main.rs:229:5:233:5 | MyPair | | main.rs:427:13:427:13 | b | P1 | main.rs:237:5:238:14 | S2 | @@ -6331,20 +6419,24 @@ inferType | main.rs:428:25:428:25 | b | | main.rs:229:5:233:5 | MyPair | | main.rs:428:25:428:25 | b | P1 | main.rs:237:5:238:14 | S2 | | main.rs:428:25:428:25 | b | P2 | main.rs:235:5:236:14 | S1 | +| main.rs:429:9:429:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:429:18:429:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:429:18:429:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:429:18:429:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:429:18:429:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:429:18:429:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:429:26:429:26 | x | | main.rs:235:5:236:14 | S1 | | main.rs:430:13:430:13 | y | | main.rs:237:5:238:14 | S2 | | main.rs:430:17:430:26 | get_snd(...) | | main.rs:237:5:238:14 | S2 | | main.rs:430:25:430:25 | b | | main.rs:229:5:233:5 | MyPair | | main.rs:430:25:430:25 | b | P1 | main.rs:237:5:238:14 | S2 | | main.rs:430:25:430:25 | b | P2 | main.rs:235:5:236:14 | S1 | +| main.rs:431:9:431:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:431:18:431:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:431:18:431:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:431:18:431:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:431:18:431:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:431:18:431:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:431:26:431:26 | y | | main.rs:237:5:238:14 | S2 | | main.rs:433:13:433:13 | c | | main.rs:229:5:233:5 | MyPair | | main.rs:433:13:433:13 | c | P1 | main.rs:239:5:240:14 | S3 | @@ -6462,28 +6554,36 @@ inferType | main.rs:569:16:595:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:570:13:570:13 | x | | main.rs:446:5:447:14 | S1 | | main.rs:570:17:570:18 | S1 | | main.rs:446:5:447:14 | S1 | +| main.rs:571:9:571:43 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:571:18:571:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:571:18:571:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:571:18:571:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:571:18:571:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:571:18:571:42 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:571:26:571:26 | x | | main.rs:446:5:447:14 | S1 | | main.rs:571:26:571:42 | x.common_method() | | main.rs:446:5:447:14 | S1 | +| main.rs:572:9:572:46 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:572:18:572:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:572:18:572:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:572:18:572:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:572:18:572:45 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:572:18:572:45 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:572:26:572:45 | ...::common_method(...) | | main.rs:446:5:447:14 | S1 | | main.rs:572:44:572:44 | x | | main.rs:446:5:447:14 | S1 | +| main.rs:573:9:573:45 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:573:18:573:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:573:18:573:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:573:18:573:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:573:18:573:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:573:18:573:44 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:573:26:573:26 | x | | main.rs:446:5:447:14 | S1 | | main.rs:573:26:573:44 | x.common_method_2() | | main.rs:446:5:447:14 | S1 | +| main.rs:574:9:574:48 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:574:18:574:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:574:18:574:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:574:18:574:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:574:18:574:47 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:574:18:574:47 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:574:26:574:47 | ...::common_method_2(...) | | main.rs:446:5:447:14 | S1 | | main.rs:574:46:574:46 | x | | main.rs:446:5:447:14 | S1 | | main.rs:576:13:576:13 | y | | main.rs:479:5:479:22 | S2 | @@ -6491,17 +6591,21 @@ inferType | main.rs:576:17:576:22 | S2(...) | | main.rs:479:5:479:22 | S2 | | main.rs:576:17:576:22 | S2(...) | T2 | main.rs:446:5:447:14 | S1 | | main.rs:576:20:576:21 | S1 | | main.rs:446:5:447:14 | S1 | +| main.rs:577:9:577:43 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:577:18:577:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:577:18:577:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:577:18:577:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:577:18:577:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:577:18:577:42 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:577:26:577:26 | y | | main.rs:479:5:479:22 | S2 | | main.rs:577:26:577:26 | y | T2 | main.rs:446:5:447:14 | S1 | | main.rs:577:26:577:42 | y.common_method() | | main.rs:446:5:447:14 | S1 | +| main.rs:578:9:578:57 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:578:18:578:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:578:18:578:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:578:18:578:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:578:18:578:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:578:18:578:56 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:578:26:578:56 | ...::common_method(...) | | main.rs:446:5:447:14 | S1 | | main.rs:578:50:578:55 | S2(...) | | main.rs:479:5:479:22 | S2 | | main.rs:578:50:578:55 | S2(...) | T2 | main.rs:446:5:447:14 | S1 | @@ -6511,25 +6615,31 @@ inferType | main.rs:580:17:580:21 | S2(...) | | main.rs:479:5:479:22 | S2 | | main.rs:580:17:580:21 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | | main.rs:580:20:580:20 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:581:9:581:43 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:581:18:581:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:581:18:581:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:581:18:581:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:581:18:581:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:581:18:581:42 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:581:26:581:26 | z | | main.rs:479:5:479:22 | S2 | | main.rs:581:26:581:26 | z | T2 | {EXTERNAL LOCATION} | i32 | | main.rs:581:26:581:42 | z.common_method() | | main.rs:446:5:447:14 | S1 | +| main.rs:582:9:582:50 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:582:18:582:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:582:18:582:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:582:18:582:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:582:18:582:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:582:18:582:49 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:582:26:582:49 | ...::common_method(...) | | main.rs:446:5:447:14 | S1 | | main.rs:582:44:582:48 | S2(...) | | main.rs:479:5:479:22 | S2 | | main.rs:582:44:582:48 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | | main.rs:582:47:582:47 | 0 | | {EXTERNAL LOCATION} | i32 | +| main.rs:583:9:583:57 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:583:18:583:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:583:18:583:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:583:18:583:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:583:18:583:56 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:583:18:583:56 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:583:26:583:56 | ...::common_method(...) | | main.rs:446:5:447:14 | S1 | | main.rs:583:51:583:55 | S2(...) | | main.rs:479:5:479:22 | S2 | | main.rs:583:51:583:55 | S2(...) | T2 | {EXTERNAL LOCATION} | i32 | @@ -6539,20 +6649,24 @@ inferType | main.rs:585:17:585:22 | S3(...) | | main.rs:517:5:518:22 | S3 | | main.rs:585:17:585:22 | S3(...) | T3 | main.rs:446:5:447:14 | S1 | | main.rs:585:20:585:21 | S1 | | main.rs:446:5:447:14 | S1 | +| main.rs:586:9:586:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:586:18:586:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:586:18:586:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:586:18:586:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:586:18:586:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:586:18:586:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:586:26:586:26 | w | | main.rs:517:5:518:22 | S3 | | main.rs:586:26:586:26 | w | T3 | main.rs:446:5:447:14 | S1 | | main.rs:586:26:586:31 | w.m(...) | | {EXTERNAL LOCATION} | & | | main.rs:586:26:586:31 | w.m(...) | TRef | main.rs:517:5:518:22 | S3 | | main.rs:586:26:586:31 | w.m(...) | TRef.T3 | main.rs:446:5:447:14 | S1 | | main.rs:586:30:586:30 | x | | main.rs:446:5:447:14 | S1 | +| main.rs:587:9:587:38 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:587:18:587:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:587:18:587:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:587:18:587:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:587:18:587:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:587:18:587:37 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:587:26:587:37 | ...::m(...) | | {EXTERNAL LOCATION} | & | | main.rs:587:26:587:37 | ...::m(...) | TRef | main.rs:517:5:518:22 | S3 | | main.rs:587:26:587:37 | ...::m(...) | TRef.T3 | main.rs:446:5:447:14 | S1 | @@ -6597,50 +6711,60 @@ inferType | main.rs:621:13:621:14 | s1 | | main.rs:619:35:619:42 | I | | main.rs:621:18:621:18 | x | | main.rs:619:45:619:61 | T | | main.rs:621:18:621:27 | x.method() | | main.rs:619:35:619:42 | I | +| main.rs:622:9:622:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:622:18:622:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:622:18:622:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:622:18:622:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:622:18:622:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:622:18:622:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:622:26:622:27 | s1 | | main.rs:619:35:619:42 | I | | main.rs:625:65:625:65 | x | | main.rs:625:46:625:62 | T | | main.rs:625:71:629:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:627:13:627:14 | s2 | | main.rs:625:36:625:43 | I | | main.rs:627:18:627:18 | x | | main.rs:625:46:625:62 | T | | main.rs:627:18:627:27 | x.method() | | main.rs:625:36:625:43 | I | +| main.rs:628:9:628:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:628:18:628:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:628:18:628:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:628:18:628:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:628:18:628:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:628:18:628:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:628:26:628:27 | s2 | | main.rs:625:36:625:43 | I | | main.rs:631:49:631:49 | x | | main.rs:631:30:631:46 | T | | main.rs:631:55:634:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:632:13:632:13 | s | | main.rs:601:5:602:14 | S1 | | main.rs:632:17:632:17 | x | | main.rs:631:30:631:46 | T | | main.rs:632:17:632:26 | x.method() | | main.rs:601:5:602:14 | S1 | +| main.rs:633:9:633:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:633:18:633:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:633:18:633:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:633:18:633:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:633:18:633:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:633:18:633:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:633:26:633:26 | s | | main.rs:601:5:602:14 | S1 | | main.rs:636:53:636:53 | x | | main.rs:636:34:636:50 | T | | main.rs:636:59:639:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:637:13:637:13 | s | | main.rs:601:5:602:14 | S1 | | main.rs:637:17:637:17 | x | | main.rs:636:34:636:50 | T | | main.rs:637:17:637:26 | x.method() | | main.rs:601:5:602:14 | S1 | +| main.rs:638:9:638:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:638:18:638:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:638:18:638:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:638:18:638:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:638:18:638:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:638:18:638:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:638:26:638:26 | s | | main.rs:601:5:602:14 | S1 | | main.rs:641:43:641:43 | x | | main.rs:641:40:641:40 | T | | main.rs:644:5:647:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:645:13:645:13 | s | | main.rs:601:5:602:14 | S1 | | main.rs:645:17:645:17 | x | | main.rs:641:40:641:40 | T | | main.rs:645:17:645:26 | x.method() | | main.rs:601:5:602:14 | S1 | +| main.rs:646:9:646:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:646:18:646:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:646:18:646:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:646:18:646:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:646:18:646:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:646:18:646:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:646:26:646:26 | s | | main.rs:601:5:602:14 | S1 | | main.rs:650:16:650:19 | SelfParam | | main.rs:649:5:653:5 | Self [trait Pair] | | main.rs:652:16:652:19 | SelfParam | | main.rs:649:5:653:5 | Self [trait Pair] | @@ -6662,10 +6786,12 @@ inferType | main.rs:667:13:667:14 | s2 | | main.rs:604:5:605:14 | S2 | | main.rs:667:18:667:18 | y | | main.rs:664:41:664:55 | T | | main.rs:667:18:667:24 | y.snd() | | main.rs:604:5:605:14 | S2 | +| main.rs:668:9:668:38 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:668:18:668:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:668:18:668:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:668:18:668:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:668:18:668:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:668:18:668:37 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:668:32:668:33 | s1 | | main.rs:601:5:602:14 | S1 | | main.rs:668:36:668:37 | s2 | | main.rs:604:5:605:14 | S2 | | main.rs:671:69:671:69 | x | | main.rs:671:52:671:66 | T | @@ -6677,10 +6803,12 @@ inferType | main.rs:674:13:674:14 | s2 | | main.rs:671:41:671:49 | T2 | | main.rs:674:18:674:18 | y | | main.rs:671:52:671:66 | T | | main.rs:674:18:674:24 | y.snd() | | main.rs:671:41:671:49 | T2 | +| main.rs:675:9:675:38 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:675:18:675:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:675:18:675:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:675:18:675:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:675:18:675:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:675:18:675:37 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:675:32:675:33 | s1 | | main.rs:601:5:602:14 | S1 | | main.rs:675:36:675:37 | s2 | | main.rs:671:41:671:49 | T2 | | main.rs:678:50:678:50 | x | | main.rs:678:41:678:47 | T | @@ -6692,10 +6820,12 @@ inferType | main.rs:681:13:681:14 | s2 | | {EXTERNAL LOCATION} | i64 | | main.rs:681:18:681:18 | y | | main.rs:678:41:678:47 | T | | main.rs:681:18:681:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | +| main.rs:682:9:682:38 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:682:18:682:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:682:18:682:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:682:18:682:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:682:18:682:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:682:18:682:37 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:682:32:682:33 | s1 | | {EXTERNAL LOCATION} | bool | | main.rs:682:36:682:37 | s2 | | {EXTERNAL LOCATION} | i64 | | main.rs:685:54:685:54 | x | | main.rs:685:41:685:51 | T | @@ -6707,10 +6837,12 @@ inferType | main.rs:688:13:688:14 | s2 | | {EXTERNAL LOCATION} | i64 | | main.rs:688:18:688:18 | y | | main.rs:685:41:685:51 | T | | main.rs:688:18:688:24 | y.snd() | | {EXTERNAL LOCATION} | i64 | +| main.rs:689:9:689:38 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:689:18:689:29 | "{:?}, {:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:689:18:689:29 | "{:?}, {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:689:18:689:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:689:18:689:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:689:18:689:37 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:689:32:689:33 | s1 | | {EXTERNAL LOCATION} | u8 | | main.rs:689:36:689:37 | s2 | | {EXTERNAL LOCATION} | i64 | | main.rs:697:18:697:22 | SelfParam | | {EXTERNAL LOCATION} | & | @@ -6872,17 +7004,21 @@ inferType | main.rs:847:17:847:33 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | | main.rs:847:17:847:33 | MyThing {...} | T | main.rs:745:5:746:14 | S2 | | main.rs:847:30:847:31 | S2 | | main.rs:745:5:746:14 | S2 | +| main.rs:849:9:849:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:849:18:849:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:849:18:849:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:849:18:849:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:849:18:849:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:849:18:849:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:849:26:849:26 | x | | main.rs:738:5:741:5 | MyThing | | main.rs:849:26:849:26 | x | T | main.rs:743:5:744:14 | S1 | | main.rs:849:26:849:31 | x.m1() | | main.rs:743:5:744:14 | S1 | +| main.rs:850:9:850:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:850:18:850:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:850:18:850:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:850:18:850:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:850:18:850:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:850:18:850:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:850:26:850:26 | y | | main.rs:738:5:741:5 | MyThing | | main.rs:850:26:850:26 | y | T | main.rs:745:5:746:14 | S2 | | main.rs:850:26:850:31 | y.m1() | | main.rs:745:5:746:14 | S2 | @@ -6896,17 +7032,21 @@ inferType | main.rs:853:17:853:33 | MyThing {...} | | main.rs:738:5:741:5 | MyThing | | main.rs:853:17:853:33 | MyThing {...} | T | main.rs:745:5:746:14 | S2 | | main.rs:853:30:853:31 | S2 | | main.rs:745:5:746:14 | S2 | +| main.rs:855:9:855:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:855:18:855:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:855:18:855:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:855:18:855:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:855:18:855:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:855:18:855:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:855:26:855:26 | x | | main.rs:738:5:741:5 | MyThing | | main.rs:855:26:855:26 | x | T | main.rs:743:5:744:14 | S1 | | main.rs:855:26:855:31 | x.m2() | | main.rs:743:5:744:14 | S1 | +| main.rs:856:9:856:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:856:18:856:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:856:18:856:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:856:18:856:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:856:18:856:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:856:18:856:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:856:26:856:26 | y | | main.rs:738:5:741:5 | MyThing | | main.rs:856:26:856:26 | y | T | main.rs:745:5:746:14 | S2 | | main.rs:856:26:856:31 | y.m2() | | main.rs:745:5:746:14 | S2 | @@ -6924,91 +7064,111 @@ inferType | main.rs:861:17:861:33 | call_trait_m1(...) | | main.rs:743:5:744:14 | S1 | | main.rs:861:31:861:32 | x2 | | main.rs:738:5:741:5 | MyThing | | main.rs:861:31:861:32 | x2 | T | main.rs:743:5:744:14 | S1 | +| main.rs:862:9:862:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:862:18:862:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:862:18:862:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:862:18:862:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:862:18:862:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:862:18:862:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:862:26:862:26 | a | | main.rs:743:5:744:14 | S1 | | main.rs:863:13:863:13 | a | | main.rs:743:5:744:14 | S1 | | main.rs:863:17:863:35 | call_trait_m1_2(...) | | main.rs:743:5:744:14 | S1 | | main.rs:863:33:863:34 | x2 | | main.rs:738:5:741:5 | MyThing | | main.rs:863:33:863:34 | x2 | T | main.rs:743:5:744:14 | S1 | +| main.rs:864:9:864:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:864:18:864:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:864:18:864:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:864:18:864:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:864:18:864:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:864:18:864:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:864:26:864:26 | a | | main.rs:743:5:744:14 | S1 | | main.rs:865:13:865:13 | a | | main.rs:743:5:744:14 | S1 | | main.rs:865:17:865:35 | call_trait_m1_3(...) | | main.rs:743:5:744:14 | S1 | | main.rs:865:33:865:34 | x2 | | main.rs:738:5:741:5 | MyThing | | main.rs:865:33:865:34 | x2 | T | main.rs:743:5:744:14 | S1 | +| main.rs:866:9:866:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:866:18:866:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:866:18:866:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:866:18:866:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:866:18:866:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:866:18:866:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:866:26:866:26 | a | | main.rs:743:5:744:14 | S1 | | main.rs:867:13:867:13 | a | | main.rs:745:5:746:14 | S2 | | main.rs:867:17:867:33 | call_trait_m1(...) | | main.rs:745:5:746:14 | S2 | | main.rs:867:31:867:32 | y2 | | main.rs:738:5:741:5 | MyThing | | main.rs:867:31:867:32 | y2 | T | main.rs:745:5:746:14 | S2 | +| main.rs:868:9:868:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:868:18:868:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:868:18:868:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:868:18:868:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:868:18:868:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:868:18:868:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:868:26:868:26 | a | | main.rs:745:5:746:14 | S2 | | main.rs:869:13:869:13 | a | | main.rs:745:5:746:14 | S2 | | main.rs:869:17:869:35 | call_trait_m1_2(...) | | main.rs:745:5:746:14 | S2 | | main.rs:869:33:869:34 | y2 | | main.rs:738:5:741:5 | MyThing | | main.rs:869:33:869:34 | y2 | T | main.rs:745:5:746:14 | S2 | +| main.rs:870:9:870:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:870:18:870:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:870:18:870:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:870:18:870:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:870:18:870:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:870:18:870:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:870:26:870:26 | a | | main.rs:745:5:746:14 | S2 | | main.rs:871:13:871:13 | a | | main.rs:745:5:746:14 | S2 | | main.rs:871:17:871:35 | call_trait_m1_3(...) | | main.rs:745:5:746:14 | S2 | | main.rs:871:33:871:34 | y2 | | main.rs:738:5:741:5 | MyThing | | main.rs:871:33:871:34 | y2 | T | main.rs:745:5:746:14 | S2 | +| main.rs:872:9:872:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:872:18:872:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:872:18:872:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:872:18:872:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:872:18:872:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:872:18:872:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:872:26:872:26 | a | | main.rs:745:5:746:14 | S2 | | main.rs:873:13:873:13 | a | | main.rs:743:5:744:14 | S1 | | main.rs:873:17:873:38 | call_trait_assoc_1(...) | | main.rs:743:5:744:14 | S1 | | main.rs:873:36:873:37 | x2 | | main.rs:738:5:741:5 | MyThing | | main.rs:873:36:873:37 | x2 | T | main.rs:743:5:744:14 | S1 | +| main.rs:874:9:874:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:874:18:874:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:874:18:874:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:874:18:874:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:874:18:874:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:874:18:874:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:874:26:874:26 | a | | main.rs:743:5:744:14 | S1 | | main.rs:875:13:875:13 | a | | main.rs:743:5:744:14 | S1 | | main.rs:875:17:875:38 | call_trait_assoc_2(...) | | main.rs:743:5:744:14 | S1 | | main.rs:875:36:875:37 | x2 | | main.rs:738:5:741:5 | MyThing | | main.rs:875:36:875:37 | x2 | T | main.rs:743:5:744:14 | S1 | +| main.rs:876:9:876:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:876:18:876:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:876:18:876:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:876:18:876:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:876:18:876:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:876:18:876:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:876:26:876:26 | a | | main.rs:743:5:744:14 | S1 | | main.rs:877:13:877:13 | a | | main.rs:745:5:746:14 | S2 | | main.rs:877:17:877:38 | call_trait_assoc_1(...) | | main.rs:745:5:746:14 | S2 | | main.rs:877:36:877:37 | y2 | | main.rs:738:5:741:5 | MyThing | | main.rs:877:36:877:37 | y2 | T | main.rs:745:5:746:14 | S2 | +| main.rs:878:9:878:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:878:18:878:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:878:18:878:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:878:18:878:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:878:18:878:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:878:18:878:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:878:26:878:26 | a | | main.rs:745:5:746:14 | S2 | | main.rs:879:13:879:13 | a | | main.rs:745:5:746:14 | S2 | | main.rs:879:17:879:38 | call_trait_assoc_2(...) | | main.rs:745:5:746:14 | S2 | | main.rs:879:36:879:37 | y2 | | main.rs:738:5:741:5 | MyThing | | main.rs:879:36:879:37 | y2 | T | main.rs:745:5:746:14 | S2 | +| main.rs:880:9:880:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:880:18:880:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:880:18:880:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:880:18:880:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:880:18:880:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:880:18:880:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:880:26:880:26 | a | | main.rs:745:5:746:14 | S2 | | main.rs:882:13:882:14 | x3 | | main.rs:738:5:741:5 | MyThing | | main.rs:882:13:882:14 | x3 | T | main.rs:738:5:741:5 | MyThing | @@ -7033,60 +7193,72 @@ inferType | main.rs:889:37:889:38 | x3 | | main.rs:738:5:741:5 | MyThing | | main.rs:889:37:889:38 | x3 | T | main.rs:738:5:741:5 | MyThing | | main.rs:889:37:889:38 | x3 | T.T | main.rs:743:5:744:14 | S1 | +| main.rs:890:9:890:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:890:18:890:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:890:18:890:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:890:18:890:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:890:18:890:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:890:18:890:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:890:26:890:26 | a | | main.rs:743:5:744:14 | S1 | | main.rs:891:13:891:13 | a | | main.rs:743:5:744:14 | S1 | | main.rs:891:17:891:41 | call_trait_thing_m1_2(...) | | main.rs:743:5:744:14 | S1 | | main.rs:891:39:891:40 | x3 | | main.rs:738:5:741:5 | MyThing | | main.rs:891:39:891:40 | x3 | T | main.rs:738:5:741:5 | MyThing | | main.rs:891:39:891:40 | x3 | T.T | main.rs:743:5:744:14 | S1 | +| main.rs:892:9:892:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:892:18:892:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:892:18:892:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:892:18:892:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:892:18:892:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:892:18:892:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:892:26:892:26 | a | | main.rs:743:5:744:14 | S1 | | main.rs:893:13:893:13 | a | | main.rs:743:5:744:14 | S1 | | main.rs:893:17:893:41 | call_trait_thing_m1_3(...) | | main.rs:743:5:744:14 | S1 | | main.rs:893:39:893:40 | x3 | | main.rs:738:5:741:5 | MyThing | | main.rs:893:39:893:40 | x3 | T | main.rs:738:5:741:5 | MyThing | | main.rs:893:39:893:40 | x3 | T.T | main.rs:743:5:744:14 | S1 | +| main.rs:894:9:894:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:894:18:894:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:894:18:894:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:894:18:894:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:894:18:894:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:894:18:894:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:894:26:894:26 | a | | main.rs:743:5:744:14 | S1 | | main.rs:895:13:895:13 | b | | main.rs:745:5:746:14 | S2 | | main.rs:895:17:895:39 | call_trait_thing_m1(...) | | main.rs:745:5:746:14 | S2 | | main.rs:895:37:895:38 | y3 | | main.rs:738:5:741:5 | MyThing | | main.rs:895:37:895:38 | y3 | T | main.rs:738:5:741:5 | MyThing | | main.rs:895:37:895:38 | y3 | T.T | main.rs:745:5:746:14 | S2 | +| main.rs:896:9:896:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:896:18:896:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:896:18:896:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:896:18:896:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:896:18:896:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:896:18:896:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:896:26:896:26 | b | | main.rs:745:5:746:14 | S2 | | main.rs:897:13:897:13 | b | | main.rs:745:5:746:14 | S2 | | main.rs:897:17:897:41 | call_trait_thing_m1_2(...) | | main.rs:745:5:746:14 | S2 | | main.rs:897:39:897:40 | y3 | | main.rs:738:5:741:5 | MyThing | | main.rs:897:39:897:40 | y3 | T | main.rs:738:5:741:5 | MyThing | | main.rs:897:39:897:40 | y3 | T.T | main.rs:745:5:746:14 | S2 | +| main.rs:898:9:898:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:898:18:898:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:898:18:898:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:898:18:898:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:898:18:898:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:898:18:898:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:898:26:898:26 | b | | main.rs:745:5:746:14 | S2 | | main.rs:899:13:899:13 | b | | main.rs:745:5:746:14 | S2 | | main.rs:899:17:899:41 | call_trait_thing_m1_3(...) | | main.rs:745:5:746:14 | S2 | | main.rs:899:39:899:40 | y3 | | main.rs:738:5:741:5 | MyThing | | main.rs:899:39:899:40 | y3 | T | main.rs:738:5:741:5 | MyThing | | main.rs:899:39:899:40 | y3 | T.T | main.rs:745:5:746:14 | S2 | +| main.rs:900:9:900:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:900:18:900:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:900:18:900:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:900:18:900:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:900:18:900:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:900:18:900:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:900:26:900:26 | b | | main.rs:745:5:746:14 | S2 | | main.rs:901:13:901:13 | x | | {EXTERNAL LOCATION} | i32 | | main.rs:901:17:901:26 | ...::m2(...) | | {EXTERNAL LOCATION} | i32 | @@ -7167,10 +7339,12 @@ inferType | main.rs:1025:16:1053:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1026:13:1026:14 | x1 | | main.rs:958:5:959:13 | S | | main.rs:1026:18:1026:18 | S | | main.rs:958:5:959:13 | S | +| main.rs:1028:9:1028:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1028:18:1028:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1028:18:1028:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1028:18:1028:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1028:18:1028:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1028:18:1028:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1028:26:1028:27 | x1 | | main.rs:958:5:959:13 | S | | main.rs:1028:26:1028:32 | x1.m1() | | main.rs:964:5:965:14 | AT | | main.rs:1030:13:1030:14 | x2 | | main.rs:958:5:959:13 | S | @@ -7178,50 +7352,62 @@ inferType | main.rs:1032:13:1032:13 | y | | main.rs:964:5:965:14 | AT | | main.rs:1032:17:1032:18 | x2 | | main.rs:958:5:959:13 | S | | main.rs:1032:17:1032:23 | x2.m2() | | main.rs:964:5:965:14 | AT | +| main.rs:1033:9:1033:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1033:18:1033:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1033:18:1033:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1033:18:1033:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1033:18:1033:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1033:18:1033:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1033:26:1033:26 | y | | main.rs:964:5:965:14 | AT | | main.rs:1035:13:1035:14 | x3 | | main.rs:958:5:959:13 | S | | main.rs:1035:18:1035:18 | S | | main.rs:958:5:959:13 | S | +| main.rs:1037:9:1037:44 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1037:18:1037:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1037:18:1037:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1037:18:1037:43 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1037:18:1037:43 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1037:18:1037:43 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1037:26:1037:27 | x3 | | main.rs:958:5:959:13 | S | | main.rs:1037:26:1037:34 | x3.put(...) | | main.rs:907:5:910:5 | Wrapper | | main.rs:1037:26:1037:34 | x3.put(...) | A | {EXTERNAL LOCATION} | i32 | | main.rs:1037:26:1037:43 | ... .unwrap() | | {EXTERNAL LOCATION} | i32 | | main.rs:1037:33:1037:33 | 1 | | {EXTERNAL LOCATION} | i32 | +| main.rs:1040:9:1040:50 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1040:18:1040:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1040:18:1040:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1040:18:1040:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1040:18:1040:49 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1040:18:1040:49 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1040:26:1040:27 | x3 | | main.rs:958:5:959:13 | S | | main.rs:1040:26:1040:40 | x3.putTwo(...) | | main.rs:907:5:910:5 | Wrapper | | main.rs:1040:36:1040:36 | 2 | | {EXTERNAL LOCATION} | i32 | | main.rs:1040:39:1040:39 | 3 | | {EXTERNAL LOCATION} | i32 | | main.rs:1042:20:1042:20 | S | | main.rs:958:5:959:13 | S | +| main.rs:1043:9:1043:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1043:18:1043:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1043:18:1043:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1043:18:1043:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1043:18:1043:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1043:18:1043:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1045:13:1045:14 | x5 | | main.rs:961:5:962:14 | S2 | | main.rs:1045:18:1045:19 | S2 | | main.rs:961:5:962:14 | S2 | +| main.rs:1046:9:1046:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1046:18:1046:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1046:18:1046:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1046:18:1046:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1046:18:1046:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1046:18:1046:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1046:26:1046:27 | x5 | | main.rs:961:5:962:14 | S2 | | main.rs:1046:26:1046:32 | x5.m1() | | main.rs:907:5:910:5 | Wrapper | | main.rs:1046:26:1046:32 | x5.m1() | A | main.rs:961:5:962:14 | S2 | | main.rs:1047:13:1047:14 | x6 | | main.rs:961:5:962:14 | S2 | | main.rs:1047:18:1047:19 | S2 | | main.rs:961:5:962:14 | S2 | +| main.rs:1048:9:1048:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1048:18:1048:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1048:18:1048:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1048:18:1048:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1048:18:1048:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1048:18:1048:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1048:26:1048:27 | x6 | | main.rs:961:5:962:14 | S2 | | main.rs:1048:26:1048:32 | x6.m2() | | main.rs:907:5:910:5 | Wrapper | | main.rs:1048:26:1048:32 | x6.m2() | A | main.rs:961:5:962:14 | S2 | @@ -7253,10 +7439,12 @@ inferType | main.rs:1084:19:1084:23 | SelfParam | TRef.T | main.rs:1082:10:1082:10 | T | | main.rs:1084:26:1084:33 | _content | | main.rs:1082:10:1082:10 | T | | main.rs:1084:51:1086:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1085:13:1085:43 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1085:22:1085:42 | "Inserting content: \\n" | | {EXTERNAL LOCATION} | & | | main.rs:1085:22:1085:42 | "Inserting content: \\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1085:22:1085:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1085:22:1085:42 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1085:22:1085:42 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1091:24:1091:28 | SelfParam | | {EXTERNAL LOCATION} | & | | main.rs:1091:24:1091:28 | SelfParam | TRef | main.rs:1080:5:1080:24 | MyType | | main.rs:1091:24:1091:28 | SelfParam | TRef.T | main.rs:1089:10:1089:17 | T | @@ -7326,17 +7514,21 @@ inferType | main.rs:1137:17:1137:36 | ...::C2 {...} | | main.rs:1115:5:1119:5 | MyEnum | | main.rs:1137:17:1137:36 | ...::C2 {...} | A | main.rs:1123:5:1124:14 | S2 | | main.rs:1137:33:1137:34 | S2 | | main.rs:1123:5:1124:14 | S2 | +| main.rs:1139:9:1139:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1139:18:1139:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1139:18:1139:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1139:18:1139:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1139:18:1139:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1139:18:1139:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1139:26:1139:26 | x | | main.rs:1115:5:1119:5 | MyEnum | | main.rs:1139:26:1139:26 | x | A | main.rs:1121:5:1122:14 | S1 | | main.rs:1139:26:1139:31 | x.m1() | | main.rs:1121:5:1122:14 | S1 | +| main.rs:1140:9:1140:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1140:18:1140:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1140:18:1140:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1140:18:1140:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1140:18:1140:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1140:18:1140:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1140:26:1140:26 | y | | main.rs:1115:5:1119:5 | MyEnum | | main.rs:1140:26:1140:26 | y | A | main.rs:1123:5:1124:14 | S2 | | main.rs:1140:26:1140:31 | y.m1() | | main.rs:1123:5:1124:14 | S2 | @@ -7401,10 +7593,12 @@ inferType | main.rs:1219:17:1219:17 | x | | main.rs:1217:39:1217:53 | T | | main.rs:1219:17:1219:22 | x.m1() | | main.rs:1145:5:1148:5 | MyThing | | main.rs:1219:17:1219:22 | x.m1() | A | main.rs:1155:5:1156:14 | S1 | +| main.rs:1220:9:1220:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1220:18:1220:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1220:18:1220:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1220:18:1220:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1220:18:1220:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1220:18:1220:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1220:26:1220:26 | a | | main.rs:1145:5:1148:5 | MyThing | | main.rs:1220:26:1220:26 | a | A | main.rs:1155:5:1156:14 | S1 | | main.rs:1223:16:1247:5 | { ... } | | {EXTERNAL LOCATION} | () | @@ -7418,17 +7612,21 @@ inferType | main.rs:1225:17:1225:33 | MyThing {...} | | main.rs:1145:5:1148:5 | MyThing | | main.rs:1225:17:1225:33 | MyThing {...} | A | main.rs:1157:5:1158:14 | S2 | | main.rs:1225:30:1225:31 | S2 | | main.rs:1157:5:1158:14 | S2 | +| main.rs:1227:9:1227:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1227:18:1227:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1227:18:1227:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1227:18:1227:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1227:18:1227:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1227:18:1227:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1227:26:1227:26 | x | | main.rs:1145:5:1148:5 | MyThing | | main.rs:1227:26:1227:26 | x | A | main.rs:1155:5:1156:14 | S1 | | main.rs:1227:26:1227:31 | x.m1() | | main.rs:1155:5:1156:14 | S1 | +| main.rs:1228:9:1228:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1228:18:1228:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1228:18:1228:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1228:18:1228:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1228:18:1228:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1228:18:1228:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1228:26:1228:26 | y | | main.rs:1145:5:1148:5 | MyThing | | main.rs:1228:26:1228:26 | y | A | main.rs:1157:5:1158:14 | S2 | | main.rs:1228:26:1228:31 | y.m1() | | main.rs:1157:5:1158:14 | S2 | @@ -7442,17 +7640,21 @@ inferType | main.rs:1231:17:1231:33 | MyThing {...} | | main.rs:1145:5:1148:5 | MyThing | | main.rs:1231:17:1231:33 | MyThing {...} | A | main.rs:1157:5:1158:14 | S2 | | main.rs:1231:30:1231:31 | S2 | | main.rs:1157:5:1158:14 | S2 | +| main.rs:1233:9:1233:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1233:18:1233:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1233:18:1233:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1233:18:1233:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1233:18:1233:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1233:18:1233:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1233:26:1233:26 | x | | main.rs:1145:5:1148:5 | MyThing | | main.rs:1233:26:1233:26 | x | A | main.rs:1155:5:1156:14 | S1 | | main.rs:1233:26:1233:31 | x.m2() | | main.rs:1155:5:1156:14 | S1 | +| main.rs:1234:9:1234:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1234:18:1234:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1234:18:1234:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1234:18:1234:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1234:18:1234:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1234:18:1234:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1234:26:1234:26 | y | | main.rs:1145:5:1148:5 | MyThing | | main.rs:1234:26:1234:26 | y | A | main.rs:1157:5:1158:14 | S2 | | main.rs:1234:26:1234:31 | y.m2() | | main.rs:1157:5:1158:14 | S2 | @@ -7466,17 +7668,21 @@ inferType | main.rs:1237:17:1237:34 | MyThing2 {...} | | main.rs:1150:5:1153:5 | MyThing2 | | main.rs:1237:17:1237:34 | MyThing2 {...} | A | main.rs:1157:5:1158:14 | S2 | | main.rs:1237:31:1237:32 | S2 | | main.rs:1157:5:1158:14 | S2 | +| main.rs:1239:9:1239:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1239:18:1239:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1239:18:1239:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1239:18:1239:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1239:18:1239:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1239:18:1239:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1239:26:1239:26 | x | | main.rs:1150:5:1153:5 | MyThing2 | | main.rs:1239:26:1239:26 | x | A | main.rs:1155:5:1156:14 | S1 | | main.rs:1239:26:1239:31 | x.m3() | | main.rs:1155:5:1156:14 | S1 | +| main.rs:1240:9:1240:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1240:18:1240:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1240:18:1240:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1240:18:1240:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1240:18:1240:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1240:18:1240:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1240:26:1240:26 | y | | main.rs:1150:5:1153:5 | MyThing2 | | main.rs:1240:26:1240:26 | y | A | main.rs:1157:5:1158:14 | S2 | | main.rs:1240:26:1240:31 | y.m3() | | main.rs:1157:5:1158:14 | S2 | @@ -7516,10 +7722,12 @@ inferType | main.rs:1280:16:1296:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1281:13:1281:13 | x | | main.rs:1253:5:1254:14 | S1 | | main.rs:1281:17:1281:18 | S1 | | main.rs:1253:5:1254:14 | S1 | +| main.rs:1282:9:1282:32 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1282:18:1282:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1282:18:1282:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1282:18:1282:31 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1282:18:1282:31 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1282:18:1282:31 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1282:26:1282:31 | id(...) | | {EXTERNAL LOCATION} | & | | main.rs:1282:26:1282:31 | id(...) | TRef | main.rs:1253:5:1254:14 | S1 | | main.rs:1282:29:1282:30 | &x | | {EXTERNAL LOCATION} | & | @@ -7527,10 +7735,12 @@ inferType | main.rs:1282:30:1282:30 | x | | main.rs:1253:5:1254:14 | S1 | | main.rs:1284:13:1284:13 | x | | main.rs:1253:5:1254:14 | S1 | | main.rs:1284:17:1284:18 | S1 | | main.rs:1253:5:1254:14 | S1 | +| main.rs:1285:9:1285:38 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1285:18:1285:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1285:18:1285:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1285:18:1285:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1285:18:1285:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1285:18:1285:37 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1285:26:1285:37 | id::<...>(...) | | {EXTERNAL LOCATION} | & | | main.rs:1285:26:1285:37 | id::<...>(...) | TRef | main.rs:1253:5:1254:14 | S1 | | main.rs:1285:35:1285:36 | &x | | {EXTERNAL LOCATION} | & | @@ -7538,10 +7748,12 @@ inferType | main.rs:1285:36:1285:36 | x | | main.rs:1253:5:1254:14 | S1 | | main.rs:1287:13:1287:13 | x | | main.rs:1253:5:1254:14 | S1 | | main.rs:1287:17:1287:18 | S1 | | main.rs:1253:5:1254:14 | S1 | +| main.rs:1289:9:1289:45 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1289:18:1289:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1289:18:1289:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1289:18:1289:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1289:18:1289:44 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1289:18:1289:44 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1289:26:1289:44 | id::<...>(...) | | {EXTERNAL LOCATION} | & | | main.rs:1289:26:1289:44 | id::<...>(...) | TRef | main.rs:1259:5:1259:25 | dyn Trait | | main.rs:1289:42:1289:43 | &x | | {EXTERNAL LOCATION} | & | @@ -7611,10 +7823,12 @@ inferType | main.rs:1341:17:1341:29 | t.unwrapSnd() | Fst | main.rs:1322:5:1323:14 | S2 | | main.rs:1341:17:1341:29 | t.unwrapSnd() | Snd | main.rs:1325:5:1326:14 | S3 | | main.rs:1341:17:1341:41 | ... .unwrapSnd() | | main.rs:1325:5:1326:14 | S3 | +| main.rs:1342:9:1342:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1342:18:1342:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1342:18:1342:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1342:18:1342:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1342:18:1342:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1342:18:1342:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1342:26:1342:26 | x | | main.rs:1325:5:1326:14 | S3 | | main.rs:1357:22:1357:25 | SelfParam | | main.rs:1355:5:1358:5 | Self [trait TraitWithAssocType] | | main.rs:1365:22:1365:25 | SelfParam | | main.rs:1353:5:1353:28 | GenS | @@ -7637,10 +7851,12 @@ inferType | main.rs:1372:26:1372:53 | ...::PairBoth(...) | Snd | main.rs:1322:5:1323:14 | S2 | | main.rs:1372:47:1372:48 | S1 | | main.rs:1319:5:1320:14 | S1 | | main.rs:1372:51:1372:52 | S2 | | main.rs:1322:5:1323:14 | S2 | +| main.rs:1373:9:1373:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1373:18:1373:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1373:18:1373:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1373:18:1373:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1373:18:1373:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1373:18:1373:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1373:26:1373:27 | p1 | | main.rs:1300:5:1306:5 | PairOption | | main.rs:1373:26:1373:27 | p1 | Fst | main.rs:1319:5:1320:14 | S1 | | main.rs:1373:26:1373:27 | p1 | Snd | main.rs:1322:5:1323:14 | S2 | @@ -7650,10 +7866,12 @@ inferType | main.rs:1376:26:1376:47 | ...::PairNone(...) | | main.rs:1300:5:1306:5 | PairOption | | main.rs:1376:26:1376:47 | ...::PairNone(...) | Fst | main.rs:1319:5:1320:14 | S1 | | main.rs:1376:26:1376:47 | ...::PairNone(...) | Snd | main.rs:1322:5:1323:14 | S2 | +| main.rs:1377:9:1377:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1377:18:1377:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1377:18:1377:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1377:18:1377:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1377:18:1377:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1377:18:1377:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1377:26:1377:27 | p2 | | main.rs:1300:5:1306:5 | PairOption | | main.rs:1377:26:1377:27 | p2 | Fst | main.rs:1319:5:1320:14 | S1 | | main.rs:1377:26:1377:27 | p2 | Snd | main.rs:1322:5:1323:14 | S2 | @@ -7664,10 +7882,12 @@ inferType | main.rs:1380:34:1380:56 | ...::PairSnd(...) | Fst | main.rs:1322:5:1323:14 | S2 | | main.rs:1380:34:1380:56 | ...::PairSnd(...) | Snd | main.rs:1325:5:1326:14 | S3 | | main.rs:1380:54:1380:55 | S3 | | main.rs:1325:5:1326:14 | S3 | +| main.rs:1381:9:1381:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1381:18:1381:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1381:18:1381:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1381:18:1381:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1381:18:1381:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1381:18:1381:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1381:26:1381:27 | p3 | | main.rs:1300:5:1306:5 | PairOption | | main.rs:1381:26:1381:27 | p3 | Fst | main.rs:1322:5:1323:14 | S2 | | main.rs:1381:26:1381:27 | p3 | Snd | main.rs:1325:5:1326:14 | S3 | @@ -7677,10 +7897,12 @@ inferType | main.rs:1384:35:1384:56 | ...::PairNone(...) | | main.rs:1300:5:1306:5 | PairOption | | main.rs:1384:35:1384:56 | ...::PairNone(...) | Fst | main.rs:1322:5:1323:14 | S2 | | main.rs:1384:35:1384:56 | ...::PairNone(...) | Snd | main.rs:1325:5:1326:14 | S3 | +| main.rs:1385:9:1385:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1385:18:1385:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1385:18:1385:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1385:18:1385:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1385:18:1385:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1385:18:1385:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1385:26:1385:27 | p3 | | main.rs:1300:5:1306:5 | PairOption | | main.rs:1385:26:1385:27 | p3 | Fst | main.rs:1322:5:1323:14 | S2 | | main.rs:1385:26:1385:27 | p3 | Snd | main.rs:1325:5:1326:14 | S3 | @@ -7756,10 +7978,12 @@ inferType | main.rs:1435:13:1435:14 | x1 | T | main.rs:1431:5:1432:13 | S | | main.rs:1435:18:1435:37 | ...::new(...) | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1435:18:1435:37 | ...::new(...) | T | main.rs:1431:5:1432:13 | S | +| main.rs:1436:9:1436:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1436:18:1436:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1436:18:1436:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1436:18:1436:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1436:18:1436:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1436:18:1436:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1436:26:1436:27 | x1 | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1436:26:1436:27 | x1 | T | main.rs:1431:5:1432:13 | S | | main.rs:1438:17:1438:18 | x2 | | main.rs:1396:5:1400:5 | MyOption | @@ -7770,10 +7994,12 @@ inferType | main.rs:1439:9:1439:10 | x2 | T | main.rs:1431:5:1432:13 | S | | main.rs:1439:9:1439:17 | x2.set(...) | | {EXTERNAL LOCATION} | () | | main.rs:1439:16:1439:16 | S | | main.rs:1431:5:1432:13 | S | +| main.rs:1440:9:1440:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1440:18:1440:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1440:18:1440:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1440:18:1440:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1440:18:1440:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1440:18:1440:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1440:26:1440:27 | x2 | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1440:26:1440:27 | x2 | T | main.rs:1431:5:1432:13 | S | | main.rs:1442:17:1442:18 | x3 | | main.rs:1396:5:1400:5 | MyOption | @@ -7784,10 +8010,12 @@ inferType | main.rs:1443:9:1443:10 | x3 | T | main.rs:1431:5:1432:13 | S | | main.rs:1443:9:1443:22 | x3.call_set(...) | | {EXTERNAL LOCATION} | () | | main.rs:1443:21:1443:21 | S | | main.rs:1431:5:1432:13 | S | +| main.rs:1444:9:1444:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1444:18:1444:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1444:18:1444:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1444:18:1444:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1444:18:1444:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1444:18:1444:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1444:26:1444:27 | x3 | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1444:26:1444:27 | x3 | T | main.rs:1431:5:1432:13 | S | | main.rs:1446:17:1446:18 | x4 | | main.rs:1396:5:1400:5 | MyOption | @@ -7801,10 +8029,12 @@ inferType | main.rs:1447:28:1447:29 | x4 | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1447:28:1447:29 | x4 | T | main.rs:1431:5:1432:13 | S | | main.rs:1447:32:1447:32 | S | | main.rs:1431:5:1432:13 | S | +| main.rs:1448:9:1448:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1448:18:1448:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1448:18:1448:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1448:18:1448:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1448:18:1448:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1448:18:1448:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1448:26:1448:27 | x4 | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1448:26:1448:27 | x4 | T | main.rs:1431:5:1432:13 | S | | main.rs:1450:13:1450:14 | x5 | | main.rs:1396:5:1400:5 | MyOption | @@ -7815,10 +8045,12 @@ inferType | main.rs:1450:18:1450:58 | ...::MySome(...) | T.T | main.rs:1431:5:1432:13 | S | | main.rs:1450:35:1450:57 | ...::MyNone(...) | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1450:35:1450:57 | ...::MyNone(...) | T | main.rs:1431:5:1432:13 | S | +| main.rs:1451:9:1451:38 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1451:18:1451:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1451:18:1451:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1451:18:1451:37 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1451:18:1451:37 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1451:18:1451:37 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1451:26:1451:27 | x5 | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1451:26:1451:27 | x5 | T | main.rs:1396:5:1400:5 | MyOption | | main.rs:1451:26:1451:27 | x5 | T.T | main.rs:1431:5:1432:13 | S | @@ -7832,10 +8064,12 @@ inferType | main.rs:1453:18:1453:58 | ...::MySome(...) | T.T | main.rs:1431:5:1432:13 | S | | main.rs:1453:35:1453:57 | ...::MyNone(...) | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1453:35:1453:57 | ...::MyNone(...) | T | main.rs:1431:5:1432:13 | S | +| main.rs:1454:9:1454:62 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1454:18:1454:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1454:18:1454:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1454:18:1454:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1454:18:1454:61 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1454:18:1454:61 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1454:26:1454:61 | ...::flatten(...) | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1454:26:1454:61 | ...::flatten(...) | T | main.rs:1431:5:1432:13 | S | | main.rs:1454:59:1454:60 | x6 | | main.rs:1396:5:1400:5 | MyOption | @@ -7857,10 +8091,12 @@ inferType | main.rs:1460:13:1460:31 | ...::MySome(...) | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1460:13:1460:31 | ...::MySome(...) | T | main.rs:1431:5:1432:13 | S | | main.rs:1460:30:1460:30 | S | | main.rs:1431:5:1432:13 | S | +| main.rs:1462:9:1462:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1462:18:1462:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1462:18:1462:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1462:18:1462:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1462:18:1462:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1462:18:1462:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1462:26:1462:32 | from_if | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1462:26:1462:32 | from_if | T | main.rs:1431:5:1432:13 | S | | main.rs:1465:13:1465:22 | from_match | | main.rs:1396:5:1400:5 | MyOption | @@ -7877,10 +8113,12 @@ inferType | main.rs:1467:22:1467:40 | ...::MySome(...) | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1467:22:1467:40 | ...::MySome(...) | T | main.rs:1431:5:1432:13 | S | | main.rs:1467:39:1467:39 | S | | main.rs:1431:5:1432:13 | S | +| main.rs:1469:9:1469:36 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1469:18:1469:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1469:18:1469:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1469:18:1469:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1469:18:1469:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1469:18:1469:35 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1469:26:1469:35 | from_match | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1469:26:1469:35 | from_match | T | main.rs:1431:5:1432:13 | S | | main.rs:1472:13:1472:21 | from_loop | | main.rs:1396:5:1400:5 | MyOption | @@ -7898,10 +8136,12 @@ inferType | main.rs:1476:19:1476:37 | ...::MySome(...) | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1476:19:1476:37 | ...::MySome(...) | T | main.rs:1431:5:1432:13 | S | | main.rs:1476:36:1476:36 | S | | main.rs:1431:5:1432:13 | S | +| main.rs:1478:9:1478:35 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1478:18:1478:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1478:18:1478:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1478:18:1478:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1478:18:1478:34 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1478:18:1478:34 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1478:26:1478:34 | from_loop | | main.rs:1396:5:1400:5 | MyOption | | main.rs:1478:26:1478:34 | from_loop | T | main.rs:1431:5:1432:13 | S | | main.rs:1496:15:1496:18 | SelfParam | | main.rs:1484:5:1485:19 | S | @@ -7963,10 +8203,12 @@ inferType | main.rs:1528:18:1528:22 | S(...) | | main.rs:1484:5:1485:19 | S | | main.rs:1528:18:1528:22 | S(...) | T | main.rs:1487:5:1488:14 | S2 | | main.rs:1528:20:1528:21 | S2 | | main.rs:1487:5:1488:14 | S2 | +| main.rs:1529:9:1529:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1529:18:1529:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1529:18:1529:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1529:18:1529:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1529:18:1529:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1529:18:1529:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1529:26:1529:27 | x1 | | main.rs:1484:5:1485:19 | S | | main.rs:1529:26:1529:27 | x1 | T | main.rs:1487:5:1488:14 | S2 | | main.rs:1529:26:1529:32 | x1.m1() | | main.rs:1487:5:1488:14 | S2 | @@ -7975,18 +8217,22 @@ inferType | main.rs:1531:18:1531:22 | S(...) | | main.rs:1484:5:1485:19 | S | | main.rs:1531:18:1531:22 | S(...) | T | main.rs:1487:5:1488:14 | S2 | | main.rs:1531:20:1531:21 | S2 | | main.rs:1487:5:1488:14 | S2 | +| main.rs:1533:9:1533:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1533:18:1533:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1533:18:1533:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1533:18:1533:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1533:18:1533:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1533:18:1533:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1533:26:1533:27 | x2 | | main.rs:1484:5:1485:19 | S | | main.rs:1533:26:1533:27 | x2 | T | main.rs:1487:5:1488:14 | S2 | | main.rs:1533:26:1533:32 | x2.m2() | | {EXTERNAL LOCATION} | & | | main.rs:1533:26:1533:32 | x2.m2() | TRef | main.rs:1487:5:1488:14 | S2 | +| main.rs:1534:9:1534:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1534:18:1534:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1534:18:1534:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1534:18:1534:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1534:18:1534:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1534:18:1534:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1534:26:1534:27 | x2 | | main.rs:1484:5:1485:19 | S | | main.rs:1534:26:1534:27 | x2 | T | main.rs:1487:5:1488:14 | S2 | | main.rs:1534:26:1534:32 | x2.m3() | | {EXTERNAL LOCATION} | & | @@ -7996,10 +8242,12 @@ inferType | main.rs:1536:18:1536:22 | S(...) | | main.rs:1484:5:1485:19 | S | | main.rs:1536:18:1536:22 | S(...) | T | main.rs:1487:5:1488:14 | S2 | | main.rs:1536:20:1536:21 | S2 | | main.rs:1487:5:1488:14 | S2 | +| main.rs:1538:9:1538:42 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1538:18:1538:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1538:18:1538:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1538:18:1538:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1538:18:1538:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1538:18:1538:41 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1538:26:1538:41 | ...::m2(...) | | {EXTERNAL LOCATION} | & | | main.rs:1538:26:1538:41 | ...::m2(...) | TRef | main.rs:1487:5:1488:14 | S2 | | main.rs:1538:38:1538:40 | &x3 | | {EXTERNAL LOCATION} | & | @@ -8007,10 +8255,12 @@ inferType | main.rs:1538:38:1538:40 | &x3 | TRef.T | main.rs:1487:5:1488:14 | S2 | | main.rs:1538:39:1538:40 | x3 | | main.rs:1484:5:1485:19 | S | | main.rs:1538:39:1538:40 | x3 | T | main.rs:1487:5:1488:14 | S2 | +| main.rs:1539:9:1539:42 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1539:18:1539:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1539:18:1539:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1539:18:1539:41 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1539:18:1539:41 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1539:18:1539:41 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1539:26:1539:41 | ...::m3(...) | | {EXTERNAL LOCATION} | & | | main.rs:1539:26:1539:41 | ...::m3(...) | TRef | main.rs:1487:5:1488:14 | S2 | | main.rs:1539:38:1539:40 | &x3 | | {EXTERNAL LOCATION} | & | @@ -8027,19 +8277,23 @@ inferType | main.rs:1541:19:1541:23 | S(...) | | main.rs:1484:5:1485:19 | S | | main.rs:1541:19:1541:23 | S(...) | T | main.rs:1487:5:1488:14 | S2 | | main.rs:1541:21:1541:22 | S2 | | main.rs:1487:5:1488:14 | S2 | +| main.rs:1543:9:1543:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1543:18:1543:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1543:18:1543:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1543:18:1543:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1543:18:1543:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1543:18:1543:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1543:26:1543:27 | x4 | | {EXTERNAL LOCATION} | & | | main.rs:1543:26:1543:27 | x4 | TRef | main.rs:1484:5:1485:19 | S | | main.rs:1543:26:1543:27 | x4 | TRef.T | main.rs:1487:5:1488:14 | S2 | | main.rs:1543:26:1543:32 | x4.m2() | | {EXTERNAL LOCATION} | & | | main.rs:1543:26:1543:32 | x4.m2() | TRef | main.rs:1487:5:1488:14 | S2 | +| main.rs:1544:9:1544:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1544:18:1544:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1544:18:1544:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1544:18:1544:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1544:18:1544:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1544:18:1544:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1544:26:1544:27 | x4 | | {EXTERNAL LOCATION} | & | | main.rs:1544:26:1544:27 | x4 | TRef | main.rs:1484:5:1485:19 | S | | main.rs:1544:26:1544:27 | x4 | TRef.T | main.rs:1487:5:1488:14 | S2 | @@ -8054,18 +8308,22 @@ inferType | main.rs:1546:19:1546:23 | S(...) | | main.rs:1484:5:1485:19 | S | | main.rs:1546:19:1546:23 | S(...) | T | main.rs:1487:5:1488:14 | S2 | | main.rs:1546:21:1546:22 | S2 | | main.rs:1487:5:1488:14 | S2 | +| main.rs:1548:9:1548:33 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1548:18:1548:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1548:18:1548:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1548:18:1548:32 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1548:18:1548:32 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1548:18:1548:32 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1548:26:1548:27 | x5 | | {EXTERNAL LOCATION} | & | | main.rs:1548:26:1548:27 | x5 | TRef | main.rs:1484:5:1485:19 | S | | main.rs:1548:26:1548:27 | x5 | TRef.T | main.rs:1487:5:1488:14 | S2 | | main.rs:1548:26:1548:32 | x5.m1() | | main.rs:1487:5:1488:14 | S2 | +| main.rs:1549:9:1549:30 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1549:18:1549:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1549:18:1549:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1549:18:1549:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1549:18:1549:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1549:18:1549:29 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1549:26:1549:27 | x5 | | {EXTERNAL LOCATION} | & | | main.rs:1549:26:1549:27 | x5 | TRef | main.rs:1484:5:1485:19 | S | | main.rs:1549:26:1549:27 | x5 | TRef.T | main.rs:1487:5:1488:14 | S2 | @@ -8079,10 +8337,12 @@ inferType | main.rs:1551:19:1551:23 | S(...) | | main.rs:1484:5:1485:19 | S | | main.rs:1551:19:1551:23 | S(...) | T | main.rs:1487:5:1488:14 | S2 | | main.rs:1551:21:1551:22 | S2 | | main.rs:1487:5:1488:14 | S2 | +| main.rs:1554:9:1554:36 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1554:18:1554:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1554:18:1554:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1554:18:1554:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1554:18:1554:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1554:18:1554:35 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1554:26:1554:30 | (...) | | main.rs:1484:5:1485:19 | S | | main.rs:1554:26:1554:30 | (...) | T | main.rs:1487:5:1488:14 | S2 | | main.rs:1554:26:1554:35 | ... .m1() | | main.rs:1487:5:1488:14 | S2 | @@ -8107,10 +8367,12 @@ inferType | main.rs:1559:17:1559:18 | x7 | T.TRef | main.rs:1487:5:1488:14 | S2 | | main.rs:1559:17:1559:23 | x7.m1() | | {EXTERNAL LOCATION} | & | | main.rs:1559:17:1559:23 | x7.m1() | TRef | main.rs:1487:5:1488:14 | S2 | +| main.rs:1560:9:1560:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1560:18:1560:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1560:18:1560:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1560:18:1560:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1560:18:1560:27 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1560:18:1560:27 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1560:26:1560:27 | x7 | | main.rs:1484:5:1485:19 | S | | main.rs:1560:26:1560:27 | x7 | T | {EXTERNAL LOCATION} | & | | main.rs:1560:26:1560:27 | x7 | T.TRef | main.rs:1487:5:1488:14 | S2 | @@ -8133,10 +8395,12 @@ inferType | main.rs:1570:17:1570:24 | my_thing | | {EXTERNAL LOCATION} | & | | main.rs:1570:17:1570:24 | my_thing | TRef | main.rs:1490:5:1493:5 | MyInt | | main.rs:1570:17:1570:43 | my_thing.method_on_borrow() | | {EXTERNAL LOCATION} | i64 | +| main.rs:1571:9:1571:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1571:18:1571:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1571:18:1571:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1571:18:1571:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1571:18:1571:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1571:18:1571:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1571:26:1571:26 | a | | {EXTERNAL LOCATION} | i64 | | main.rs:1574:13:1574:20 | my_thing | | {EXTERNAL LOCATION} | & | | main.rs:1574:13:1574:20 | my_thing | TRef | main.rs:1490:5:1493:5 | MyInt | @@ -8148,10 +8412,12 @@ inferType | main.rs:1575:17:1575:24 | my_thing | | {EXTERNAL LOCATION} | & | | main.rs:1575:17:1575:24 | my_thing | TRef | main.rs:1490:5:1493:5 | MyInt | | main.rs:1575:17:1575:47 | my_thing.method_not_on_borrow() | | {EXTERNAL LOCATION} | i64 | +| main.rs:1576:9:1576:27 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1576:18:1576:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1576:18:1576:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1576:18:1576:26 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1576:18:1576:26 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1576:18:1576:26 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1576:26:1576:26 | a | | {EXTERNAL LOCATION} | i64 | | main.rs:1583:16:1583:20 | SelfParam | | {EXTERNAL LOCATION} | & | | main.rs:1583:16:1583:20 | SelfParam | TRef | main.rs:1581:5:1589:5 | Self [trait MyTrait] | @@ -8330,10 +8596,12 @@ inferType | main.rs:1673:22:1673:30 | &mut flag | | {EXTERNAL LOCATION} | &mut | | main.rs:1673:22:1673:30 | &mut flag | TRefMut | main.rs:1631:5:1634:5 | MyFlag | | main.rs:1673:27:1673:30 | flag | | main.rs:1631:5:1634:5 | MyFlag | +| main.rs:1674:9:1674:30 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1674:18:1674:23 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1674:18:1674:23 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1674:18:1674:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1674:18:1674:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1674:18:1674:29 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1674:26:1674:29 | flag | | main.rs:1631:5:1634:5 | MyFlag | | main.rs:1689:43:1692:5 | { ... } | | {EXTERNAL LOCATION} | Result | | main.rs:1689:43:1692:5 | { ... } | E | main.rs:1681:5:1682:14 | S1 | @@ -8410,10 +8678,12 @@ inferType | main.rs:1715:49:1718:9 | \|...\| ... | dyn(Output).E | main.rs:1681:5:1682:14 | S1 | | main.rs:1715:53:1718:9 | { ... } | | {EXTERNAL LOCATION} | Result | | main.rs:1715:53:1718:9 | { ... } | E | main.rs:1681:5:1682:14 | S1 | +| main.rs:1716:13:1716:31 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1716:22:1716:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1716:22:1716:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1716:22:1716:30 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1716:22:1716:30 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1716:22:1716:30 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1717:13:1717:34 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | | main.rs:1717:13:1717:34 | ...::Ok::<...>(...) | E | main.rs:1681:5:1682:14 | S1 | | main.rs:1719:9:1719:23 | ...::Err(...) | | {EXTERNAL LOCATION} | Result | @@ -8430,10 +8700,12 @@ inferType | main.rs:1724:37:1724:52 | try_same_error(...) | E | main.rs:1681:5:1682:14 | S1 | | main.rs:1724:37:1724:52 | try_same_error(...) | T | main.rs:1681:5:1682:14 | S1 | | main.rs:1724:54:1726:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1725:13:1725:36 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1725:22:1725:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1725:22:1725:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1725:22:1725:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1725:22:1725:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1725:22:1725:35 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1725:30:1725:35 | result | | main.rs:1681:5:1682:14 | S1 | | main.rs:1728:9:1730:9 | if ... {...} | | {EXTERNAL LOCATION} | () | | main.rs:1728:16:1728:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | @@ -8444,10 +8716,12 @@ inferType | main.rs:1728:37:1728:55 | try_convert_error(...) | E | main.rs:1684:5:1685:14 | S2 | | main.rs:1728:37:1728:55 | try_convert_error(...) | T | main.rs:1681:5:1682:14 | S1 | | main.rs:1728:57:1730:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1729:13:1729:36 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1729:22:1729:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1729:22:1729:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1729:22:1729:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1729:22:1729:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1729:22:1729:35 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1729:30:1729:35 | result | | main.rs:1681:5:1682:14 | S1 | | main.rs:1732:9:1734:9 | if ... {...} | | {EXTERNAL LOCATION} | () | | main.rs:1732:16:1732:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | @@ -8458,10 +8732,12 @@ inferType | main.rs:1732:37:1732:49 | try_chained(...) | E | main.rs:1684:5:1685:14 | S2 | | main.rs:1732:37:1732:49 | try_chained(...) | T | main.rs:1681:5:1682:14 | S1 | | main.rs:1732:51:1734:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1733:13:1733:36 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1733:22:1733:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1733:22:1733:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1733:22:1733:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1733:22:1733:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1733:22:1733:35 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1733:30:1733:35 | result | | main.rs:1681:5:1682:14 | S1 | | main.rs:1736:9:1738:9 | if ... {...} | | {EXTERNAL LOCATION} | () | | main.rs:1736:16:1736:33 | ...::Ok(...) | | {EXTERNAL LOCATION} | Result | @@ -8476,10 +8752,12 @@ inferType | main.rs:1736:49:1736:62 | ...::Ok(...) | T | main.rs:1681:5:1682:14 | S1 | | main.rs:1736:60:1736:61 | S1 | | main.rs:1681:5:1682:14 | S1 | | main.rs:1736:65:1738:9 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1737:13:1737:36 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:1737:22:1737:27 | "{:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:1737:22:1737:27 | "{:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:1737:22:1737:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:1737:22:1737:35 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:1737:22:1737:35 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1737:30:1737:35 | result | | main.rs:1681:5:1682:14 | S1 | | main.rs:1743:16:1834:5 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:1744:13:1744:13 | x | | {EXTERNAL LOCATION} | i32 | @@ -10722,18 +11000,22 @@ inferType | main.rs:2844:13:2844:19 | box 100 | T | {EXTERNAL LOCATION} | i32 | | main.rs:2844:17:2844:19 | 100 | | {EXTERNAL LOCATION} | i32 | | main.rs:2844:24:2846:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2845:17:2845:37 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:2845:26:2845:36 | "Boxed 100\\n" | | {EXTERNAL LOCATION} | & | | main.rs:2845:26:2845:36 | "Boxed 100\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:2845:26:2845:36 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:2845:26:2845:36 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2845:26:2845:36 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2847:13:2847:17 | box ... | | {EXTERNAL LOCATION} | Box | | main.rs:2847:13:2847:17 | box ... | A | {EXTERNAL LOCATION} | Global | | main.rs:2847:13:2847:17 | box ... | T | {EXTERNAL LOCATION} | i32 | | main.rs:2847:22:2850:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2849:17:2849:52 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:2849:26:2849:42 | "Boxed value: {}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:2849:26:2849:42 | "Boxed value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:2849:26:2849:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:2849:26:2849:51 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2849:26:2849:51 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2854:13:2854:22 | nested_box | | {EXTERNAL LOCATION} | Box | | main.rs:2854:13:2854:22 | nested_box | A | {EXTERNAL LOCATION} | Global | | main.rs:2854:13:2854:22 | nested_box | T | {EXTERNAL LOCATION} | Box | @@ -10760,10 +11042,12 @@ inferType | main.rs:2856:13:2856:21 | box ... | T.A | {EXTERNAL LOCATION} | Global | | main.rs:2856:13:2856:21 | box ... | T.T | {EXTERNAL LOCATION} | i32 | | main.rs:2856:26:2859:13 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2858:17:2858:60 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:2858:26:2858:43 | "Nested boxed: {}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:2858:26:2858:43 | "Nested boxed: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:2858:26:2858:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:2858:26:2858:59 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2858:26:2858:59 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2870:36:2872:9 | { ... } | | main.rs:2867:5:2867:22 | Path | | main.rs:2871:13:2871:19 | Path {...} | | main.rs:2867:5:2867:22 | Path | | main.rs:2874:29:2874:33 | SelfParam | | {EXTERNAL LOCATION} | & | @@ -10944,10 +11228,12 @@ inferType | main.rs:2973:9:2973:9 | 0 | | {EXTERNAL LOCATION} | i32 | | main.rs:2977:20:2984:5 | { ... } | | {EXTERNAL LOCATION} | i32 | | main.rs:2980:26:2980:27 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2982:9:2982:30 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:2982:18:2982:26 | "b: {:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:2982:18:2982:26 | "b: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:2982:18:2982:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:2982:18:2982:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2982:18:2982:29 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2983:9:2983:9 | 0 | | {EXTERNAL LOCATION} | i32 | | main.rs:2986:20:2988:5 | { ... } | | {EXTERNAL LOCATION} | i32 | | main.rs:2987:16:2987:16 | 0 | | {EXTERNAL LOCATION} | i32 | @@ -10959,10 +11245,12 @@ inferType | main.rs:2993:16:2993:19 | cond | | {EXTERNAL LOCATION} | bool | | main.rs:2993:21:2995:13 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2994:24:2994:25 | 12 | | {EXTERNAL LOCATION} | i32 | +| main.rs:2997:9:2997:30 | MacroExpr | | {EXTERNAL LOCATION} | () | | main.rs:2997:18:2997:26 | "a: {:?}\\n" | | {EXTERNAL LOCATION} | & | | main.rs:2997:18:2997:26 | "a: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | main.rs:2997:18:2997:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | main.rs:2997:18:2997:29 | { ... } | | {EXTERNAL LOCATION} | () | +| main.rs:2997:18:2997:29 | { ... } | | {EXTERNAL LOCATION} | () | | main.rs:2997:29:2997:29 | a | | {EXTERNAL LOCATION} | () | | main.rs:2998:9:2998:9 | 0 | | {EXTERNAL LOCATION} | i32 | | main.rs:3003:16:3050:5 | { ... } | | {EXTERNAL LOCATION} | () | @@ -11220,10 +11508,12 @@ inferType | pattern_matching.rs:15:31:18:5 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:16:13:16:16 | mesg | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:16:20:16:23 | mesg | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:17:9:17:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:17:18:17:25 | "{mesg}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:17:18:17:25 | "{mesg}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:17:18:17:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:17:18:17:25 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:17:18:17:25 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:17:20:17:23 | mesg | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:19:5:25:5 | match value { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:19:11:19:15 | value | | {EXTERNAL LOCATION} | Option | @@ -11234,10 +11524,12 @@ inferType | pattern_matching.rs:20:23:23:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:21:17:21:20 | mesg | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:21:24:21:27 | mesg | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:22:13:22:30 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:22:22:22:29 | "{mesg}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:22:22:22:29 | "{mesg}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:22:22:22:29 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:22:22:22:29 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:22:22:22:29 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:22:24:22:27 | mesg | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:24:9:24:12 | None | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:24:9:24:12 | None | T | {EXTERNAL LOCATION} | i32 | @@ -11248,19 +11540,23 @@ inferType | pattern_matching.rs:26:16:26:29 | value.unwrap() | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:27:9:27:12 | mesg | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:27:16:27:19 | mesg | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:28:5:28:22 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:28:14:28:21 | "{mesg}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:28:14:28:21 | "{mesg}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:28:14:28:21 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:28:14:28:21 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:28:14:28:21 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:28:16:28:19 | mesg | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:29:9:29:12 | mesg | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:29:16:29:20 | value | | {EXTERNAL LOCATION} | Option | | pattern_matching.rs:29:16:29:20 | value | T | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:29:16:29:21 | TryExpr | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:30:5:30:22 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:30:14:30:21 | "{mesg}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:30:14:30:21 | "{mesg}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:30:14:30:21 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:30:14:30:21 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:30:14:30:21 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:30:16:30:19 | mesg | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:32:9:32:14 | value2 | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:32:9:32:14 | value2 | TRef | {EXTERNAL LOCATION} | Option | @@ -11284,10 +11580,12 @@ inferType | pattern_matching.rs:33:33:36:5 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:34:13:34:16 | mesg | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:34:20:34:23 | mesg | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:35:9:35:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:35:18:35:25 | "{mesg}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:35:18:35:25 | "{mesg}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:35:18:35:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:35:18:35:25 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:35:18:35:25 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:35:20:35:23 | mesg | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:38:9:38:14 | value3 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:38:18:38:19 | 42 | | {EXTERNAL LOCATION} | i32 | @@ -11300,10 +11598,12 @@ inferType | pattern_matching.rs:40:13:40:16 | mesg | TRef | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:40:20:40:23 | mesg | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:40:20:40:23 | mesg | TRef | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:41:9:41:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:41:18:41:25 | "{mesg}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:41:18:41:25 | "{mesg}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:41:18:41:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:41:18:41:25 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:41:18:41:25 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:41:20:41:23 | mesg | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:41:20:41:23 | mesg | TRef | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:44:9:44:14 | value4 | | {EXTERNAL LOCATION} | Option | @@ -11323,10 +11623,12 @@ inferType | pattern_matching.rs:46:13:46:16 | mesg | TRef | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:46:20:46:23 | mesg | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:46:20:46:23 | mesg | TRef | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:47:9:47:26 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:47:18:47:25 | "{mesg}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:47:18:47:25 | "{mesg}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:47:18:47:25 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:47:18:47:25 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:47:18:47:25 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:47:20:47:23 | mesg | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:47:20:47:23 | mesg | TRef | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:50:13:50:18 | value5 | | {EXTERNAL LOCATION} | & | @@ -11527,28 +11829,34 @@ inferType | pattern_matching.rs:173:15:176:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:174:17:174:29 | literal_match | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:174:33:174:37 | value | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:175:13:175:58 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:175:22:175:42 | "Literal pattern: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:175:22:175:42 | "Literal pattern: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:175:22:175:57 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:175:22:175:57 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:175:22:175:57 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:175:45:175:57 | literal_match | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:177:10:177:10 | 1 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:177:15:180:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:178:17:178:32 | negative_literal | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:178:36:178:40 | value | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:179:13:179:62 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:179:22:179:43 | "Negative literal: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:179:22:179:43 | "Negative literal: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:179:22:179:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:179:22:179:61 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:179:22:179:61 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:179:46:179:61 | negative_literal | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:181:9:181:9 | 0 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:181:14:184:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:182:17:182:28 | zero_literal | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:182:32:182:36 | value | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:183:13:183:54 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:183:22:183:39 | "Zero literal: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:183:22:183:39 | "Zero literal: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:183:22:183:53 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:183:22:183:53 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:183:22:183:53 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:183:42:183:53 | zero_literal | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:185:9:185:9 | _ | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:185:14:185:15 | { ... } | | {EXTERNAL LOCATION} | () | @@ -11560,10 +11868,12 @@ inferType | pattern_matching.rs:190:17:193:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:191:17:191:24 | pi_match | | {EXTERNAL LOCATION} | f64 | | pattern_matching.rs:191:28:191:36 | float_val | | {EXTERNAL LOCATION} | f64 | +| pattern_matching.rs:192:13:192:48 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:192:22:192:37 | "Pi matched: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:192:22:192:37 | "Pi matched: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:192:22:192:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:192:22:192:47 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:192:22:192:47 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:192:40:192:47 | pi_match | | {EXTERNAL LOCATION} | f64 | | pattern_matching.rs:194:9:194:9 | _ | | {EXTERNAL LOCATION} | f64 | | pattern_matching.rs:194:14:194:15 | { ... } | | {EXTERNAL LOCATION} | () | @@ -11581,10 +11891,12 @@ inferType | pattern_matching.rs:200:17:200:27 | hello_match | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:200:31:200:40 | string_val | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:200:31:200:40 | string_val | TRef | {EXTERNAL LOCATION} | str | +| pattern_matching.rs:201:13:201:55 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:201:22:201:41 | "String literal: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:201:22:201:41 | "String literal: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:201:22:201:54 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:201:22:201:54 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:201:22:201:54 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:201:44:201:54 | hello_match | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:201:44:201:54 | hello_match | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:203:9:203:9 | _ | | {EXTERNAL LOCATION} | & | @@ -11598,19 +11910,23 @@ inferType | pattern_matching.rs:208:17:211:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:209:17:209:26 | true_match | | {EXTERNAL LOCATION} | bool | | pattern_matching.rs:209:30:209:37 | bool_val | | {EXTERNAL LOCATION} | bool | +| pattern_matching.rs:210:13:210:52 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:210:22:210:39 | "True literal: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:210:22:210:39 | "True literal: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:210:22:210:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:210:22:210:51 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:210:22:210:51 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:210:42:210:51 | true_match | | {EXTERNAL LOCATION} | bool | | pattern_matching.rs:212:9:212:13 | false | | {EXTERNAL LOCATION} | bool | | pattern_matching.rs:212:18:215:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:213:17:213:27 | false_match | | {EXTERNAL LOCATION} | bool | | pattern_matching.rs:213:31:213:38 | bool_val | | {EXTERNAL LOCATION} | bool | +| pattern_matching.rs:214:13:214:54 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:214:22:214:40 | "False literal: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:214:22:214:40 | "False literal: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:214:22:214:53 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:214:22:214:53 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:214:22:214:53 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:214:43:214:53 | false_match | | {EXTERNAL LOCATION} | bool | | pattern_matching.rs:219:30:277:1 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:220:9:220:13 | value | | {EXTERNAL LOCATION} | i32 | @@ -11621,10 +11937,12 @@ inferType | pattern_matching.rs:224:14:227:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:225:17:225:27 | bound_value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:225:31:225:31 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:226:13:226:59 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:226:22:226:45 | "Identifier pattern: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:226:22:226:45 | "Identifier pattern: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:226:22:226:58 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:226:22:226:58 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:226:22:226:58 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:226:48:226:58 | bound_value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:231:5:236:5 | match ... { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:231:11:231:16 | &value | | {EXTERNAL LOCATION} | & | @@ -11640,10 +11958,12 @@ inferType | pattern_matching.rs:233:29:233:29 | x | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:233:29:233:29 | x | TRef | {EXTERNAL LOCATION} | & | | pattern_matching.rs:233:29:233:29 | x | TRef.TRef | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:234:13:234:61 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:234:22:234:49 | "Reference identifier: {:?}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:234:22:234:49 | "Reference identifier: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:234:22:234:60 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:234:22:234:60 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:234:22:234:60 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:234:52:234:60 | ref_bound | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:234:52:234:60 | ref_bound | TRef | {EXTERNAL LOCATION} | & | | pattern_matching.rs:234:52:234:60 | ref_bound | TRef.TRef | {EXTERNAL LOCATION} | i32 | @@ -11658,10 +11978,12 @@ inferType | pattern_matching.rs:243:13:243:13 | x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:243:13:243:18 | ... += ... | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:243:18:243:18 | 1 | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:244:13:244:57 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:244:22:244:45 | "Mutable identifier: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:244:22:244:45 | "Mutable identifier: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:244:22:244:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:244:22:244:56 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:244:22:244:56 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:244:48:244:56 | mut_bound | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:249:9:249:20 | option_value | | pattern_matching.rs:152:1:156:1 | MyOption | | pattern_matching.rs:249:9:249:20 | option_value | T | {EXTERNAL LOCATION} | i32 | @@ -11678,10 +12000,12 @@ inferType | pattern_matching.rs:251:35:254:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:252:17:252:24 | at_bound | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:252:28:252:28 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:253:13:253:60 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:253:22:253:49 | "@ pattern with literal: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:253:22:253:49 | "@ pattern with literal: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:253:22:253:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:253:22:253:59 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:253:22:253:59 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:253:52:253:59 | at_bound | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:255:9:255:35 | ...::Some(...) | | pattern_matching.rs:152:1:156:1 | MyOption | | pattern_matching.rs:255:9:255:35 | ...::Some(...) | T | {EXTERNAL LOCATION} | i32 | @@ -11691,10 +12015,12 @@ inferType | pattern_matching.rs:255:40:258:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:256:17:256:30 | range_at_bound | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:256:34:256:34 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:257:13:257:64 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:257:22:257:47 | "@ pattern with range: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:257:22:257:47 | "@ pattern with range: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:257:22:257:63 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:257:22:257:63 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:257:22:257:63 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:257:50:257:63 | range_at_bound | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:259:9:259:25 | ...::Some(...) | | pattern_matching.rs:152:1:156:1 | MyOption | | pattern_matching.rs:259:9:259:25 | ...::Some(...) | T | {EXTERNAL LOCATION} | i32 | @@ -11702,18 +12028,22 @@ inferType | pattern_matching.rs:259:30:262:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:260:17:260:26 | some_bound | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:260:30:260:30 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:261:13:261:50 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:261:22:261:37 | "Some value: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:261:22:261:37 | "Some value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:261:22:261:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:261:22:261:49 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:261:22:261:49 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:261:40:261:49 | some_bound | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:263:9:263:22 | ...::None | | pattern_matching.rs:152:1:156:1 | MyOption | | pattern_matching.rs:263:9:263:22 | ...::None | T | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:263:27:265:9 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:264:13:264:34 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:264:22:264:33 | "None value\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:264:22:264:33 | "None value\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:264:22:264:33 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:264:22:264:33 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:264:22:264:33 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:269:13:269:23 | ref_mut_val | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:269:27:269:30 | 5i32 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:270:5:276:5 | match ... { ... } | | {EXTERNAL LOCATION} | () | @@ -11738,10 +12068,12 @@ inferType | pattern_matching.rs:273:15:273:27 | ref_mut_bound | TRefMut | {EXTERNAL LOCATION} | &mut | | pattern_matching.rs:273:15:273:27 | ref_mut_bound | TRefMut.TRefMut | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:273:32:273:32 | 1 | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:274:13:274:39 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:274:22:274:38 | "Ref mut pattern\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:274:22:274:38 | "Ref mut pattern\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:274:22:274:38 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:274:22:274:38 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:274:22:274:38 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:279:28:290:1 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:280:9:280:13 | value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:280:17:280:21 | 42i32 | | {EXTERNAL LOCATION} | i32 | @@ -11757,10 +12089,12 @@ inferType | pattern_matching.rs:285:14:288:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:286:17:286:32 | wildcard_context | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:286:36:286:40 | value | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:287:13:287:66 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:287:22:287:47 | "Wildcard pattern for: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:287:22:287:47 | "Wildcard pattern for: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:287:22:287:65 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:287:22:287:65 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:287:22:287:65 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:287:50:287:65 | wildcard_context | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:292:25:324:1 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:293:9:293:13 | value | | {EXTERNAL LOCATION} | i32 | @@ -11773,30 +12107,36 @@ inferType | pattern_matching.rs:297:19:300:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:298:17:298:31 | range_inclusive | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:298:35:298:39 | value | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:299:13:299:60 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:299:22:299:42 | "Range inclusive: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:299:22:299:42 | "Range inclusive: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:299:22:299:59 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:299:22:299:59 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:299:22:299:59 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:299:45:299:59 | range_inclusive | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:301:9:301:10 | 11 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:301:9:301:12 | RangePat | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:301:17:304:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:302:17:302:26 | range_from | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:302:30:302:34 | value | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:303:13:303:53 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:303:22:303:40 | "Range from 11: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:303:22:303:40 | "Range from 11: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:303:22:303:52 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:303:22:303:52 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:303:22:303:52 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:303:43:303:52 | range_from | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:305:9:305:12 | RangePat | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:305:12:305:12 | 0 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:305:17:308:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:306:17:306:34 | range_to_inclusive | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:306:38:306:42 | value | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:307:13:307:68 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:307:22:307:47 | "Range to 0 inclusive: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:307:22:307:47 | "Range to 0 inclusive: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:307:22:307:67 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:307:22:307:67 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:307:22:307:67 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:307:50:307:67 | range_to_inclusive | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:309:9:309:9 | _ | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:309:14:309:15 | { ... } | | {EXTERNAL LOCATION} | () | @@ -11810,10 +12150,12 @@ inferType | pattern_matching.rs:314:22:317:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:315:17:315:30 | lowercase_char | | {EXTERNAL LOCATION} | char | | pattern_matching.rs:315:34:315:41 | char_val | | {EXTERNAL LOCATION} | char | +| pattern_matching.rs:316:13:316:58 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:316:22:316:41 | "Lowercase char: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:316:22:316:41 | "Lowercase char: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:316:22:316:57 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:316:22:316:57 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:316:22:316:57 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:316:44:316:57 | lowercase_char | | {EXTERNAL LOCATION} | char | | pattern_matching.rs:318:9:318:11 | 'A' | | {EXTERNAL LOCATION} | char | | pattern_matching.rs:318:9:318:17 | RangePat | | {EXTERNAL LOCATION} | char | @@ -11821,10 +12163,12 @@ inferType | pattern_matching.rs:318:22:321:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:319:17:319:30 | uppercase_char | | {EXTERNAL LOCATION} | char | | pattern_matching.rs:319:34:319:41 | char_val | | {EXTERNAL LOCATION} | char | +| pattern_matching.rs:320:13:320:58 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:320:22:320:41 | "Uppercase char: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:320:22:320:41 | "Uppercase char: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:320:22:320:57 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:320:22:320:57 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:320:22:320:57 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:320:44:320:57 | uppercase_char | | {EXTERNAL LOCATION} | char | | pattern_matching.rs:322:9:322:9 | _ | | {EXTERNAL LOCATION} | char | | pattern_matching.rs:322:14:322:15 | { ... } | | {EXTERNAL LOCATION} | () | @@ -11843,10 +12187,12 @@ inferType | pattern_matching.rs:332:16:335:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:333:17:333:27 | deref_match | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:333:31:333:35 | value | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:334:13:334:59 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:334:22:334:45 | "Dereferenced match: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:334:22:334:45 | "Dereferenced match: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:334:22:334:58 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:334:22:334:58 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:334:22:334:58 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:334:48:334:58 | deref_match | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:336:9:336:10 | &... | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:336:9:336:10 | &... | TRef | {EXTERNAL LOCATION} | i32 | @@ -11854,10 +12200,12 @@ inferType | pattern_matching.rs:336:15:339:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:337:17:337:27 | deref_bound | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:337:31:337:31 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:338:13:338:61 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:338:22:338:47 | "Dereferenced binding: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:338:22:338:47 | "Dereferenced binding: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:338:22:338:60 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:338:22:338:60 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:338:22:338:60 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:338:50:338:60 | deref_bound | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:342:5:347:5 | match ... { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:342:11:342:28 | &mut mutable_value | | {EXTERNAL LOCATION} | &mut | @@ -11872,10 +12220,12 @@ inferType | pattern_matching.rs:344:17:344:29 | mut_ref_bound | TRef | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:344:33:344:33 | x | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:344:33:344:33 | x | TRef | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:345:13:345:62 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:345:22:345:46 | "Mutable ref pattern: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:345:22:345:46 | "Mutable ref pattern: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:345:22:345:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:345:22:345:61 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:345:22:345:61 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:345:49:345:61 | mut_ref_bound | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:345:49:345:61 | mut_ref_bound | TRef | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:349:5:354:5 | match ... { ... } | | {EXTERNAL LOCATION} | () | @@ -11892,10 +12242,12 @@ inferType | pattern_matching.rs:351:31:351:31 | x | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:351:31:351:31 | x | TRef | {EXTERNAL LOCATION} | & | | pattern_matching.rs:351:31:351:31 | x | TRef.TRef | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:352:13:352:58 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:352:22:352:44 | "Reference pattern: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:352:22:352:44 | "Reference pattern: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:352:22:352:57 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:352:22:352:57 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:352:22:352:57 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:352:47:352:57 | ref_pattern | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:352:47:352:57 | ref_pattern | TRef | {EXTERNAL LOCATION} | & | | pattern_matching.rs:352:47:352:57 | ref_pattern | TRef.TRef | {EXTERNAL LOCATION} | i32 | @@ -11912,10 +12264,12 @@ inferType | pattern_matching.rs:362:33:365:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:363:17:363:22 | origin | | pattern_matching.rs:135:1:140:1 | Point | | pattern_matching.rs:363:26:363:30 | point | | pattern_matching.rs:135:1:140:1 | Point | +| pattern_matching.rs:364:13:364:50 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:364:22:364:41 | "Origin point: {:?}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:364:22:364:41 | "Origin point: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:364:22:364:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:364:22:364:49 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:364:22:364:49 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:364:44:364:49 | origin | | pattern_matching.rs:135:1:140:1 | Point | | pattern_matching.rs:366:9:366:25 | Point {...} | | pattern_matching.rs:135:1:140:1 | Point | | pattern_matching.rs:366:17:366:17 | x | | {EXTERNAL LOCATION} | i32 | @@ -11925,10 +12279,12 @@ inferType | pattern_matching.rs:367:28:367:28 | x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:368:17:368:28 | x_axis_point | | pattern_matching.rs:135:1:140:1 | Point | | pattern_matching.rs:368:32:368:36 | point | | pattern_matching.rs:135:1:140:1 | Point | +| pattern_matching.rs:369:13:369:81 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:369:22:369:56 | "Point on x-axis: x={}, point=... | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:369:22:369:56 | "Point on x-axis: x={}, point=... | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:369:22:369:80 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:369:22:369:80 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:369:22:369:80 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:369:59:369:66 | x_axis_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:369:69:369:80 | x_axis_point | | pattern_matching.rs:135:1:140:1 | Point | | pattern_matching.rs:371:9:371:27 | Point {...} | | pattern_matching.rs:135:1:140:1 | Point | @@ -11936,10 +12292,12 @@ inferType | pattern_matching.rs:371:32:374:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:372:17:372:27 | ten_x_point | | pattern_matching.rs:135:1:140:1 | Point | | pattern_matching.rs:372:31:372:35 | point | | pattern_matching.rs:135:1:140:1 | Point | +| pattern_matching.rs:373:13:373:58 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:373:22:373:44 | "Point with x=10: {:?}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:373:22:373:44 | "Point with x=10: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:373:22:373:57 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:373:22:373:57 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:373:22:373:57 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:373:47:373:57 | ten_x_point | | pattern_matching.rs:135:1:140:1 | Point | | pattern_matching.rs:375:9:375:22 | Point {...} | | pattern_matching.rs:135:1:140:1 | Point | | pattern_matching.rs:375:17:375:17 | x | | {EXTERNAL LOCATION} | i32 | @@ -11949,10 +12307,12 @@ inferType | pattern_matching.rs:376:29:376:29 | x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:377:17:377:25 | general_y | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:377:29:377:29 | y | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:378:13:378:69 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:378:22:378:46 | "General point: ({}, {})\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:378:22:378:46 | "General point: ({}, {})\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:378:22:378:68 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:378:22:378:68 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:378:22:378:68 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:378:49:378:57 | general_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:378:60:378:68 | general_y | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:383:9:383:13 | shape | | pattern_matching.rs:145:1:150:1 | Shape | @@ -11969,10 +12329,12 @@ inferType | pattern_matching.rs:392:30:392:30 | w | | {EXTERNAL LOCATION} | f64 | | pattern_matching.rs:393:17:393:27 | rect_height | | {EXTERNAL LOCATION} | f64 | | pattern_matching.rs:393:31:393:31 | h | | {EXTERNAL LOCATION} | f64 | +| pattern_matching.rs:394:13:394:65 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:394:22:394:39 | "Rectangle: {}x{}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:394:22:394:39 | "Rectangle: {}x{}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:394:22:394:64 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:394:22:394:64 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:394:22:394:64 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:394:42:394:51 | rect_width | | {EXTERNAL LOCATION} | f64 | | pattern_matching.rs:394:54:394:64 | rect_height | | {EXTERNAL LOCATION} | f64 | | pattern_matching.rs:396:9:396:9 | _ | | pattern_matching.rs:145:1:150:1 | Shape | @@ -11995,10 +12357,12 @@ inferType | pattern_matching.rs:405:29:408:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:406:17:406:25 | red_color | | pattern_matching.rs:142:1:143:25 | Color | | pattern_matching.rs:406:29:406:33 | color | | pattern_matching.rs:142:1:143:25 | Color | +| pattern_matching.rs:407:13:407:49 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:407:22:407:37 | "Pure red: {:?}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:407:22:407:37 | "Pure red: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:407:22:407:48 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:407:22:407:48 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:407:22:407:48 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:407:40:407:48 | red_color | | pattern_matching.rs:142:1:143:25 | Color | | pattern_matching.rs:409:9:409:22 | Color(...) | | pattern_matching.rs:142:1:143:25 | Color | | pattern_matching.rs:409:15:409:15 | r | | {EXTERNAL LOCATION} | u8 | @@ -12011,10 +12375,12 @@ inferType | pattern_matching.rs:411:35:411:35 | g | | {EXTERNAL LOCATION} | u8 | | pattern_matching.rs:412:17:412:30 | blue_component | | {EXTERNAL LOCATION} | u8 | | pattern_matching.rs:412:34:412:34 | b | | {EXTERNAL LOCATION} | u8 | +| pattern_matching.rs:413:13:416:13 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:414:17:414:37 | "Color: ({}, {}, {})\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:414:17:414:37 | "Color: ({}, {}, {})\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:414:17:415:62 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:414:17:415:62 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:414:17:415:62 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:415:17:415:29 | red_component | | {EXTERNAL LOCATION} | u8 | | pattern_matching.rs:415:32:415:46 | green_component | | {EXTERNAL LOCATION} | u8 | | pattern_matching.rs:415:49:415:62 | blue_component | | {EXTERNAL LOCATION} | u8 | @@ -12027,10 +12393,12 @@ inferType | pattern_matching.rs:422:27:425:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:423:17:423:29 | reddish_color | | pattern_matching.rs:142:1:143:25 | Color | | pattern_matching.rs:423:33:423:37 | color | | pattern_matching.rs:142:1:143:25 | Color | +| pattern_matching.rs:424:13:424:58 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:424:22:424:42 | "Reddish color: {:?}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:424:22:424:42 | "Reddish color: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:424:22:424:57 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:424:22:424:57 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:424:22:424:57 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:424:45:424:57 | reddish_color | | pattern_matching.rs:142:1:143:25 | Color | | pattern_matching.rs:426:9:426:20 | Color(...) | | pattern_matching.rs:142:1:143:25 | Color | | pattern_matching.rs:426:15:426:15 | r | | {EXTERNAL LOCATION} | u8 | @@ -12038,10 +12406,12 @@ inferType | pattern_matching.rs:426:25:429:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:427:17:427:23 | any_red | | {EXTERNAL LOCATION} | u8 | | pattern_matching.rs:427:27:427:27 | r | | {EXTERNAL LOCATION} | u8 | +| pattern_matching.rs:428:13:428:55 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:428:22:428:45 | "Any color with red: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:428:22:428:45 | "Any color with red: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:428:22:428:54 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:428:22:428:54 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:428:22:428:54 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:428:48:428:54 | any_red | | {EXTERNAL LOCATION} | u8 | | pattern_matching.rs:434:9:434:15 | wrapper | | pattern_matching.rs:432:5:433:24 | Wrapper | | pattern_matching.rs:434:19:434:29 | Wrapper(...) | | pattern_matching.rs:432:5:433:24 | Wrapper | @@ -12053,10 +12423,12 @@ inferType | pattern_matching.rs:436:23:439:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:437:17:437:29 | wrapped_value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:437:33:437:33 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:438:13:438:50 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:438:22:438:34 | "Wrapped: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:438:22:438:34 | "Wrapped: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:438:22:438:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:438:22:438:49 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:438:22:438:49 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:438:37:438:49 | wrapped_value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:443:25:498:1 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:444:9:444:13 | tuple | | {EXTERNAL LOCATION} | (T_3) | @@ -12105,10 +12477,12 @@ inferType | pattern_matching.rs:449:31:449:35 | tuple | T1 | {EXTERNAL LOCATION} | i64 | | pattern_matching.rs:449:31:449:35 | tuple | T2 | {EXTERNAL LOCATION} | f32 | | pattern_matching.rs:449:31:449:35 | tuple | T2 | {EXTERNAL LOCATION} | f64 | +| pattern_matching.rs:450:13:450:54 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:450:22:450:40 | "Exact tuple: {:?}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:450:22:450:40 | "Exact tuple: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:450:22:450:53 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:450:22:450:53 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:450:22:450:53 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:450:43:450:53 | exact_tuple | | {EXTERNAL LOCATION} | (T_3) | | pattern_matching.rs:450:43:450:53 | exact_tuple | T0 | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:450:43:450:53 | exact_tuple | T1 | {EXTERNAL LOCATION} | i32 | @@ -12137,10 +12511,12 @@ inferType | pattern_matching.rs:455:17:455:26 | third_elem | | {EXTERNAL LOCATION} | f64 | | pattern_matching.rs:455:30:455:30 | c | | {EXTERNAL LOCATION} | f32 | | pattern_matching.rs:455:30:455:30 | c | | {EXTERNAL LOCATION} | f64 | +| pattern_matching.rs:456:13:456:80 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:456:22:456:42 | "Tuple: ({}, {}, {})\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:456:22:456:42 | "Tuple: ({}, {}, {})\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:456:22:456:79 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:456:22:456:79 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:456:22:456:79 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:456:45:456:54 | first_elem | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:456:57:456:67 | second_elem | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:456:57:456:67 | second_elem | | {EXTERNAL LOCATION} | i64 | @@ -12160,10 +12536,12 @@ inferType | pattern_matching.rs:462:9:462:19 | TuplePat | T2 | {EXTERNAL LOCATION} | f32 | | pattern_matching.rs:462:9:462:19 | TuplePat | T2 | {EXTERNAL LOCATION} | f64 | | pattern_matching.rs:462:24:465:9 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:464:13:464:54 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:464:22:464:40 | "First element: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:464:22:464:40 | "First element: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:464:22:464:53 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:464:22:464:53 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:464:22:464:53 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:469:9:469:12 | unit | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:469:16:469:17 | TupleExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:470:5:475:5 | match unit { ... } | | {EXTERNAL LOCATION} | () | @@ -12172,10 +12550,12 @@ inferType | pattern_matching.rs:471:15:474:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:472:17:472:26 | unit_value | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:472:30:472:33 | unit | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:473:13:473:52 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:473:22:473:39 | "Unit value: {:?}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:473:22:473:39 | "Unit value: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:473:22:473:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:473:22:473:51 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:473:22:473:51 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:473:42:473:51 | unit_value | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:478:9:478:14 | single | | {EXTERNAL LOCATION} | (T_1) | | pattern_matching.rs:478:9:478:14 | single | T0 | {EXTERNAL LOCATION} | i32 | @@ -12191,10 +12571,12 @@ inferType | pattern_matching.rs:480:17:483:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:481:17:481:27 | single_elem | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:481:31:481:31 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:482:13:482:61 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:482:22:482:47 | "Single element tuple: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:482:22:482:47 | "Single element tuple: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:482:22:482:60 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:482:22:482:60 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:482:22:482:60 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:482:50:482:60 | single_elem | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:487:9:487:18 | ref_tuple1 | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:487:9:487:18 | ref_tuple1 | TRef | {EXTERNAL LOCATION} | (T_2) | @@ -12216,14 +12598,18 @@ inferType | pattern_matching.rs:488:21:488:30 | ref_tuple1 | TRef.T0 | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:488:21:488:30 | ref_tuple1 | TRef.T1 | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:488:32:491:5 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:489:9:489:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:489:18:489:24 | "n: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:489:18:489:24 | "n: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:489:18:489:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:489:18:489:27 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:489:18:489:27 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:490:9:490:28 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:490:18:490:24 | "m: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:490:18:490:24 | "m: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:490:18:490:27 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:490:18:490:27 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:490:18:490:27 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:494:9:494:18 | ref_tuple2 | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:494:9:494:18 | ref_tuple2 | TRef | {EXTERNAL LOCATION} | (T_2) | | pattern_matching.rs:494:9:494:18 | ref_tuple2 | TRef.T0 | {EXTERNAL LOCATION} | i32 | @@ -12242,14 +12628,18 @@ inferType | pattern_matching.rs:495:18:495:27 | ref_tuple2 | TRef | {EXTERNAL LOCATION} | (T_2) | | pattern_matching.rs:495:18:495:27 | ref_tuple2 | TRef.T0 | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:495:18:495:27 | ref_tuple2 | TRef.T1 | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:496:5:496:24 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:496:14:496:20 | "n: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:496:14:496:20 | "n: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:496:14:496:23 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:496:14:496:23 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:496:14:496:23 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:497:5:497:24 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:497:14:497:20 | "m: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:497:14:497:20 | "m: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:497:14:497:23 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:497:14:497:23 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:497:14:497:23 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:500:33:520:1 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:501:9:501:13 | value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:501:17:501:21 | 42i32 | | {EXTERNAL LOCATION} | i32 | @@ -12260,10 +12650,12 @@ inferType | pattern_matching.rs:505:16:508:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:506:17:506:27 | paren_bound | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:506:31:506:31 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:507:13:507:62 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:507:22:507:48 | "Parenthesized pattern: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:507:22:507:48 | "Parenthesized pattern: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:507:22:507:61 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:507:22:507:61 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:507:22:507:61 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:507:51:507:61 | paren_bound | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:512:9:512:13 | tuple | | {EXTERNAL LOCATION} | (T_2) | | pattern_matching.rs:512:9:512:13 | tuple | T0 | {EXTERNAL LOCATION} | i32 | @@ -12288,10 +12680,12 @@ inferType | pattern_matching.rs:515:27:515:27 | x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:516:17:516:23 | paren_y | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:516:27:516:27 | y | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:517:13:517:72 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:517:22:517:53 | "Parenthesized in tuple: {}, {... | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:517:22:517:53 | "Parenthesized in tuple: {}, {... | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:517:22:517:71 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:517:22:517:71 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:517:22:517:71 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:517:56:517:62 | paren_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:517:65:517:71 | paren_y | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:522:25:563:1 | { ... } | | {EXTERNAL LOCATION} | () | @@ -12324,10 +12718,12 @@ inferType | pattern_matching.rs:528:31:528:35 | slice | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:528:31:528:35 | slice | TRef | {EXTERNAL LOCATION} | [] | | pattern_matching.rs:528:31:528:35 | slice | TRef.TSlice | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:529:13:529:54 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:529:22:529:40 | "Empty slice: {:?}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:529:22:529:40 | "Empty slice: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:529:22:529:53 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:529:22:529:53 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:529:22:529:53 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:529:43:529:53 | empty_slice | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:529:43:529:53 | empty_slice | TRef | {EXTERNAL LOCATION} | [] | | pattern_matching.rs:529:43:529:53 | empty_slice | TRef.TSlice | {EXTERNAL LOCATION} | i32 | @@ -12335,26 +12731,32 @@ inferType | pattern_matching.rs:531:9:531:11 | SlicePat | TRef | {EXTERNAL LOCATION} | [] | | pattern_matching.rs:531:9:531:11 | SlicePat | TRef.TSlice | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:531:16:534:9 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:533:13:533:55 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:533:22:533:41 | "Single element: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:533:22:533:41 | "Single element: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:533:22:533:54 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:533:22:533:54 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:533:22:533:54 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:535:9:535:23 | SlicePat | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:535:9:535:23 | SlicePat | TRef | {EXTERNAL LOCATION} | [] | | pattern_matching.rs:535:9:535:23 | SlicePat | TRef.TSlice | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:535:28:539:9 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:538:13:538:71 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:538:22:538:43 | "Two elements: {}, {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:538:22:538:43 | "Two elements: {}, {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:538:22:538:70 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:538:22:538:70 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:538:22:538:70 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:540:9:540:34 | SlicePat | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:540:9:540:34 | SlicePat | TRef | {EXTERNAL LOCATION} | [] | | pattern_matching.rs:540:9:540:34 | SlicePat | TRef.TSlice | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:540:39:550:9 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:544:13:549:13 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:545:17:545:53 | "First: {}, last: {}, middle l... | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:545:17:545:53 | "First: {}, last: {}, middle l... | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:545:17:548:34 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:545:17:548:34 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:545:17:548:34 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:554:9:554:13 | array | | {EXTERNAL LOCATION} | [;] | | pattern_matching.rs:554:9:554:13 | array | TArray | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:554:17:554:28 | [...] | | {EXTERNAL LOCATION} | [;] | @@ -12368,10 +12770,12 @@ inferType | pattern_matching.rs:556:9:556:17 | SlicePat | | {EXTERNAL LOCATION} | [;] | | pattern_matching.rs:556:9:556:17 | SlicePat | TArray | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:556:22:561:9 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:560:13:560:71 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:560:22:560:49 | "Array elements: {}, {}, {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:560:22:560:49 | "Array elements: {}, {}, {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:560:22:560:70 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:560:22:560:70 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:560:22:560:70 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:565:24:601:1 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:567:27:567:28 | 42 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:568:9:568:13 | value | | {EXTERNAL LOCATION} | i32 | @@ -12382,10 +12786,12 @@ inferType | pattern_matching.rs:571:21:574:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:572:17:572:27 | const_match | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:572:31:572:35 | value | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:573:13:573:57 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:573:22:573:43 | "Matches constant: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:573:22:573:43 | "Matches constant: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:573:22:573:56 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:573:22:573:56 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:573:22:573:56 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:573:46:573:56 | const_match | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:575:9:575:9 | _ | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:575:14:575:15 | { ... } | | {EXTERNAL LOCATION} | () | @@ -12400,20 +12806,24 @@ inferType | pattern_matching.rs:581:9:581:22 | ...::None | | pattern_matching.rs:152:1:156:1 | MyOption | | pattern_matching.rs:581:9:581:22 | ...::None | T | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:581:27:583:9 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:582:13:582:36 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:582:22:582:35 | "None variant\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:582:22:582:35 | "None variant\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:582:22:582:35 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:582:22:582:35 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:582:22:582:35 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:584:9:584:25 | ...::Some(...) | | pattern_matching.rs:152:1:156:1 | MyOption | | pattern_matching.rs:584:9:584:25 | ...::Some(...) | T | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:584:24:584:24 | x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:584:30:587:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:585:17:585:26 | some_value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:585:30:585:30 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:586:13:586:50 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:586:22:586:37 | "Some value: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:586:22:586:37 | "Some value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:586:22:586:49 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:586:22:586:49 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:586:22:586:49 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:586:40:586:49 | some_value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:591:5:600:5 | match ... { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:591:11:591:51 | ...::Ok::<...>(...) | | {EXTERNAL LOCATION} | Result | @@ -12427,10 +12837,12 @@ inferType | pattern_matching.rs:592:39:595:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:593:17:593:24 | ok_value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:593:28:593:28 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:594:13:594:46 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:594:22:594:35 | "Ok value: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:594:22:594:35 | "Ok value: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:594:22:594:45 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:594:22:594:45 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:594:22:594:45 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:594:38:594:45 | ok_value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:596:9:596:35 | ...::Err(...) | | {EXTERNAL LOCATION} | Result | | pattern_matching.rs:596:9:596:35 | ...::Err(...) | E | {EXTERNAL LOCATION} | usize | @@ -12439,10 +12851,12 @@ inferType | pattern_matching.rs:596:40:599:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:597:17:597:25 | err_value | | {EXTERNAL LOCATION} | usize | | pattern_matching.rs:597:29:597:29 | e | | {EXTERNAL LOCATION} | usize | +| pattern_matching.rs:598:13:598:44 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:598:22:598:32 | "Error: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:598:22:598:32 | "Error: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:598:22:598:43 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:598:22:598:43 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:598:22:598:43 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:598:35:598:43 | err_value | | {EXTERNAL LOCATION} | usize | | pattern_matching.rs:603:22:638:1 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:604:9:604:13 | value | | {EXTERNAL LOCATION} | i32 | @@ -12456,10 +12870,12 @@ inferType | pattern_matching.rs:608:22:611:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:609:17:609:25 | small_num | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:609:29:609:33 | value | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:610:13:610:51 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:610:22:610:39 | "Small number: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:610:22:610:39 | "Small number: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:610:22:610:50 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:610:22:610:50 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:610:22:610:50 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:610:42:610:50 | small_num | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:612:9:612:10 | 10 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:612:9:612:15 | 10 \| 20 | | {EXTERNAL LOCATION} | i32 | @@ -12467,10 +12883,12 @@ inferType | pattern_matching.rs:612:20:615:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:613:17:613:25 | round_num | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:613:29:613:33 | value | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:614:13:614:51 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:614:22:614:39 | "Round number: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:614:22:614:39 | "Round number: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:614:22:614:50 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:614:22:614:50 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:614:22:614:50 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:614:42:614:50 | round_num | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:616:9:616:9 | _ | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:616:14:616:15 | { ... } | | {EXTERNAL LOCATION} | () | @@ -12494,10 +12912,12 @@ inferType | pattern_matching.rs:623:26:623:26 | x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:624:17:624:22 | axis_y | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:624:26:624:26 | y | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:625:13:625:63 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:625:22:625:46 | "Point on axis: ({}, {})\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:625:22:625:46 | "Point on axis: ({}, {})\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:625:22:625:62 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:625:22:625:62 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:625:22:625:62 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:625:49:625:54 | axis_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:625:57:625:62 | axis_y | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:627:9:627:9 | _ | | pattern_matching.rs:135:1:140:1 | Point | @@ -12514,10 +12934,12 @@ inferType | pattern_matching.rs:632:30:635:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:633:17:633:30 | range_or_value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:633:34:633:38 | value | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:634:13:634:52 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:634:22:634:35 | "In range: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:634:22:634:35 | "In range: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:634:22:634:51 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:634:22:634:51 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:634:22:634:51 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:634:38:634:51 | range_or_value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:636:9:636:9 | _ | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:636:14:636:15 | { ... } | | {EXTERNAL LOCATION} | () | @@ -12548,10 +12970,12 @@ inferType | pattern_matching.rs:645:9:645:19 | TuplePat | T2 | {EXTERNAL LOCATION} | f32 | | pattern_matching.rs:645:9:645:19 | TuplePat | T3 | {EXTERNAL LOCATION} | u8 | | pattern_matching.rs:645:24:648:9 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:647:13:647:55 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:647:22:647:42 | "First with rest: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:647:22:647:42 | "First with rest: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:647:22:647:54 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:647:22:647:54 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:647:22:647:54 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:651:5:656:5 | match tuple { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:651:11:651:15 | tuple | | {EXTERNAL LOCATION} | (T_4) | | pattern_matching.rs:651:11:651:15 | tuple | T0 | {EXTERNAL LOCATION} | i32 | @@ -12564,10 +12988,12 @@ inferType | pattern_matching.rs:652:9:652:18 | TuplePat | T2 | {EXTERNAL LOCATION} | f32 | | pattern_matching.rs:652:9:652:18 | TuplePat | T3 | {EXTERNAL LOCATION} | u8 | | pattern_matching.rs:652:23:655:9 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:654:13:654:53 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:654:22:654:41 | "Last with rest: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:654:22:654:41 | "Last with rest: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:654:22:654:52 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:654:22:654:52 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:654:22:654:52 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:658:5:664:5 | match tuple { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:658:11:658:15 | tuple | | {EXTERNAL LOCATION} | (T_4) | | pattern_matching.rs:658:11:658:15 | tuple | T0 | {EXTERNAL LOCATION} | i32 | @@ -12580,10 +13006,12 @@ inferType | pattern_matching.rs:659:9:659:25 | TuplePat | T2 | {EXTERNAL LOCATION} | f32 | | pattern_matching.rs:659:9:659:25 | TuplePat | T3 | {EXTERNAL LOCATION} | u8 | | pattern_matching.rs:659:30:663:9 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:662:13:662:68 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:662:22:662:45 | "First and last: {}, {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:662:22:662:45 | "First and last: {}, {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:662:22:662:67 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:662:22:662:67 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:662:22:662:67 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:667:9:667:13 | point | | pattern_matching.rs:135:1:140:1 | Point | | pattern_matching.rs:667:17:667:38 | Point {...} | | pattern_matching.rs:135:1:140:1 | Point | | pattern_matching.rs:667:28:667:29 | 10 | | {EXTERNAL LOCATION} | i32 | @@ -12595,25 +13023,35 @@ inferType | pattern_matching.rs:669:28:672:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:670:17:670:22 | rest_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:670:26:670:26 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:671:13:671:48 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:671:22:671:39 | "X coordinate: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:671:22:671:39 | "X coordinate: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:671:22:671:47 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:671:22:671:47 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:671:22:671:47 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:671:42:671:47 | rest_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:676:25:696:1 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:678:5:678:19 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:678:17:678:18 | 42 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:678:17:678:18 | match 42i32 { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:678:17:678:18 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:679:5:679:18 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:679:17:679:17 | match 42i32 { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:679:17:679:17 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:679:17:679:17 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:694:5:694:30 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:694:21:694:25 | 42i32 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:694:21:694:25 | 42i32 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:694:21:694:25 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:694:21:694:29 | match 42i32 { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:694:21:694:29 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:694:28:694:29 | 42 | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:695:5:695:29 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:695:21:695:25 | 10i32 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:695:21:695:25 | 10i32 | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:695:21:695:25 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:695:21:695:28 | match 10i32 { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:695:21:695:28 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:695:28:695:28 | x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:698:34:724:1 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:700:9:700:20 | complex_data | | {EXTERNAL LOCATION} | (T_2) | @@ -12659,10 +13097,12 @@ inferType | pattern_matching.rs:706:28:706:28 | g | | {EXTERNAL LOCATION} | u8 | | pattern_matching.rs:707:17:707:24 | nested_b | | {EXTERNAL LOCATION} | u8 | | pattern_matching.rs:707:28:707:28 | b | | {EXTERNAL LOCATION} | u8 | +| pattern_matching.rs:708:13:711:13 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:709:17:709:57 | "Complex nested: y={}, green={... | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:709:17:709:57 | "Complex nested: y={}, green={... | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:709:17:710:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:709:17:710:44 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:709:17:710:44 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:710:17:710:24 | nested_y | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:710:27:710:34 | nested_g | | {EXTERNAL LOCATION} | u8 | | pattern_matching.rs:710:37:710:44 | nested_b | | {EXTERNAL LOCATION} | u8 | @@ -12690,10 +13130,12 @@ inferType | pattern_matching.rs:714:76:717:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:715:17:715:29 | alt_complex_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:715:33:715:33 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:716:13:716:66 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:716:22:716:50 | "Alternative complex: x={:?}\\n... | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:716:22:716:50 | "Alternative complex: x={:?}\\n... | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:716:22:716:65 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:716:22:716:65 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:716:22:716:65 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:716:53:716:65 | alt_complex_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:719:9:719:13 | other | | {EXTERNAL LOCATION} | (T_2) | | pattern_matching.rs:719:9:719:13 | other | T0 | pattern_matching.rs:135:1:140:1 | Point | @@ -12708,10 +13150,12 @@ inferType | pattern_matching.rs:720:33:720:37 | other | T0 | pattern_matching.rs:135:1:140:1 | Point | | pattern_matching.rs:720:33:720:37 | other | T1 | pattern_matching.rs:152:1:156:1 | MyOption | | pattern_matching.rs:720:33:720:37 | other | T1.T | pattern_matching.rs:142:1:143:25 | Color | +| pattern_matching.rs:721:13:721:63 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:721:22:721:47 | "Other complex data: {:?}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:721:22:721:47 | "Other complex data: {:?}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:721:22:721:62 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:721:22:721:62 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:721:22:721:62 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:721:50:721:62 | other_complex | | {EXTERNAL LOCATION} | (T_2) | | pattern_matching.rs:721:50:721:62 | other_complex | T0 | pattern_matching.rs:135:1:140:1 | Point | | pattern_matching.rs:721:50:721:62 | other_complex | T1 | pattern_matching.rs:152:1:156:1 | MyOption | @@ -12903,10 +13347,12 @@ inferType | pattern_matching.rs:796:22:796:22 | x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:797:13:797:18 | loop_y | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:797:22:797:22 | y | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:798:9:798:59 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:798:18:798:42 | "Point in loop: ({}, {})\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:798:18:798:42 | "Point in loop: ({}, {})\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:798:18:798:58 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:798:18:798:58 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:798:18:798:58 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:798:45:798:50 | loop_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:798:53:798:58 | loop_y | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:802:9:802:20 | option_value | | pattern_matching.rs:152:1:156:1 | MyOption | @@ -12924,10 +13370,12 @@ inferType | pattern_matching.rs:803:50:806:5 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:804:13:804:20 | if_let_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:804:24:804:24 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:805:9:805:55 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:805:18:805:44 | "If let with @ pattern: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:805:18:805:44 | "If let with @ pattern: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:805:18:805:54 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:805:18:805:54 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:805:18:805:54 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:805:47:805:54 | if_let_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:809:13:809:17 | stack | | {EXTERNAL LOCATION} | Vec | | pattern_matching.rs:809:13:809:17 | stack | A | {EXTERNAL LOCATION} | Global | @@ -12950,10 +13398,12 @@ inferType | pattern_matching.rs:810:37:813:5 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:811:13:811:23 | while_let_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:811:27:811:27 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:812:9:812:43 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:812:18:812:29 | "Popped: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:812:18:812:29 | "Popped: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:812:18:812:42 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:812:18:812:42 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:812:18:812:42 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:812:32:812:42 | while_let_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:816:9:816:13 | value | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:816:17:816:21 | 42i32 | | {EXTERNAL LOCATION} | i32 | @@ -12966,10 +13416,12 @@ inferType | pattern_matching.rs:818:23:821:9 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:819:17:819:23 | guard_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:819:27:819:27 | x | | {EXTERNAL LOCATION} | i32 | +| pattern_matching.rs:820:13:820:45 | MacroExpr | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:820:22:820:35 | "Positive: {}\\n" | | {EXTERNAL LOCATION} | & | | pattern_matching.rs:820:22:820:35 | "Positive: {}\\n" | TRef | {EXTERNAL LOCATION} | str | | pattern_matching.rs:820:22:820:44 | ...::_print(...) | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:820:22:820:44 | { ... } | | {EXTERNAL LOCATION} | () | +| pattern_matching.rs:820:22:820:44 | { ... } | | {EXTERNAL LOCATION} | () | | pattern_matching.rs:820:38:820:44 | guard_x | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:822:9:822:9 | _ | | {EXTERNAL LOCATION} | i32 | | pattern_matching.rs:822:14:822:15 | { ... } | | {EXTERNAL LOCATION} | () | diff --git a/rust/ql/test/library-tests/variables/Cfg.expected b/rust/ql/test/library-tests/variables/Cfg.expected index f93586d373be..d3297eb8c30d 100644 --- a/rust/ql/test/library-tests/variables/Cfg.expected +++ b/rust/ql/test/library-tests/variables/Cfg.expected @@ -14,9 +14,9 @@ edges | main.rs:7:14:7:20 | ...::format_args_nl!... | main.rs:7:14:7:20 | MacroExpr | | | main.rs:7:14:7:20 | ExprStmt | main.rs:7:5:7:12 | ...::_print | | | main.rs:7:14:7:20 | FormatArgsExpr | main.rs:7:14:7:20 | ...::format_args_nl!... | | -| main.rs:7:14:7:20 | MacroBlockExpr | main.rs:7:5:7:21 | println!... | | | main.rs:7:14:7:20 | MacroExpr | main.rs:7:14:7:20 | ...::_print(...) | | -| main.rs:7:14:7:20 | { ... } | main.rs:7:14:7:20 | MacroBlockExpr | | +| main.rs:7:14:7:20 | { ... } | main.rs:7:5:7:21 | println!... | | +| main.rs:7:14:7:20 | { ... } | main.rs:7:14:7:20 | { ... } | | | main.rs:7:20:7:20 | s | main.rs:7:14:7:20 | FormatArgsExpr | | | main.rs:10:1:13:1 | enter fn print_i64 | main.rs:10:14:10:14 | i | | | main.rs:10:1:13:1 | exit fn print_i64 (normal) | main.rs:10:1:13:1 | exit fn print_i64 | | @@ -33,9 +33,9 @@ edges | main.rs:12:14:12:20 | ...::format_args_nl!... | main.rs:12:14:12:20 | MacroExpr | | | main.rs:12:14:12:20 | ExprStmt | main.rs:12:5:12:12 | ...::_print | | | main.rs:12:14:12:20 | FormatArgsExpr | main.rs:12:14:12:20 | ...::format_args_nl!... | | -| main.rs:12:14:12:20 | MacroBlockExpr | main.rs:12:5:12:21 | println!... | | | main.rs:12:14:12:20 | MacroExpr | main.rs:12:14:12:20 | ...::_print(...) | | -| main.rs:12:14:12:20 | { ... } | main.rs:12:14:12:20 | MacroBlockExpr | | +| main.rs:12:14:12:20 | { ... } | main.rs:12:5:12:21 | println!... | | +| main.rs:12:14:12:20 | { ... } | main.rs:12:14:12:20 | { ... } | | | main.rs:12:20:12:20 | i | main.rs:12:14:12:20 | FormatArgsExpr | | | main.rs:15:1:17:1 | enter fn print_i64_ref | main.rs:15:18:15:18 | i | | | main.rs:15:1:17:1 | exit fn print_i64_ref (normal) | main.rs:15:1:17:1 | exit fn print_i64_ref | | @@ -264,8 +264,8 @@ edges | main.rs:106:19:106:28 | x.unwrap() | main.rs:106:9:106:29 | print_str(...) | | | main.rs:107:9:107:13 | "not yet implemented" | main.rs:107:9:107:13 | ...::panic(...) | | | main.rs:107:9:107:13 | ...::panic | main.rs:107:9:107:13 | "not yet implemented" | | -| main.rs:107:9:107:13 | ...::panic(...) | main.rs:107:9:107:13 | MacroBlockExpr | | -| main.rs:107:9:107:13 | MacroBlockExpr | main.rs:107:9:107:15 | todo!... | | +| main.rs:107:9:107:13 | ...::panic(...) | main.rs:107:9:107:13 | { ... } | | +| main.rs:107:9:107:13 | { ... } | main.rs:107:9:107:15 | todo!... | | | main.rs:107:9:107:15 | MacroExpr | main.rs:103:10:108:5 | { ... } | | | main.rs:107:9:107:15 | todo!... | main.rs:107:9:107:15 | MacroExpr | | | main.rs:109:5:109:13 | print_str | main.rs:109:15:109:15 | x | | @@ -451,9 +451,9 @@ edges | main.rs:192:22:192:51 | ...::format_args_nl!... | main.rs:192:22:192:51 | MacroExpr | | | main.rs:192:22:192:51 | ExprStmt | main.rs:192:13:192:20 | ...::_print | | | main.rs:192:22:192:51 | FormatArgsExpr | main.rs:192:22:192:51 | ...::format_args_nl!... | | -| main.rs:192:22:192:51 | MacroBlockExpr | main.rs:192:13:192:52 | println!... | | | main.rs:192:22:192:51 | MacroExpr | main.rs:192:22:192:51 | ...::_print(...) | | -| main.rs:192:22:192:51 | { ... } | main.rs:192:22:192:51 | MacroBlockExpr | | +| main.rs:192:22:192:51 | { ... } | main.rs:192:13:192:52 | println!... | | +| main.rs:192:22:192:51 | { ... } | main.rs:192:22:192:51 | { ... } | | | main.rs:194:9:194:29 | ...::Hello {...} | main.rs:194:26:194:27 | id | match | | main.rs:194:26:194:27 | id | main.rs:194:26:194:27 | id | | | main.rs:194:26:194:27 | id | main.rs:197:13:197:21 | print_i64 | match | diff --git a/rust/schema/annotations.py b/rust/schema/annotations.py index 8896e5809f27..6fb45ae05b9a 100644 --- a/rust/schema/annotations.py +++ b/rust/schema/annotations.py @@ -1440,28 +1440,6 @@ class _: """ -class MacroBlockExpr(Expr): - """ - A sequence of statements generated by a `MacroCall`. For example: - ```rust - macro_rules! my_macro { - () => { - let mut x = 40; - x += 2; - x - }; - } - - my_macro!(); // this macro expands to a sequence of statements (and an expression) - ``` - """ - - __cfg__ = True - - statements: list[Stmt] | child - tail_expr: optional[Expr] | child - - @annotate(MacroTypeRepr) class _: """