time: 0.003; rss: 59MB -> 63MB ( +4MB) parse_crate time: 0.000; rss: 63MB -> 63MB ( +0MB) attributes_injection time: 0.000; rss: 63MB -> 63MB ( +0MB) plugin_loading time: 0.000; rss: 63MB -> 63MB ( +0MB) plugin_registration time: 0.000; rss: 65MB -> 65MB ( +0MB) crate_injection time: 0.332; rss: 65MB -> 160MB ( +95MB) expand_crate time: 0.000; rss: 160MB -> 160MB ( +0MB) check_unused_macros time: 0.333; rss: 65MB -> 160MB ( +95MB) macro_expand_crate time: 0.000; rss: 160MB -> 160MB ( +0MB) maybe_building_test_harness time: 0.010; rss: 160MB -> 160MB ( +0MB) AST_validation time: 0.000; rss: 160MB -> 160MB ( +0MB) maybe_create_a_macro_crate time: 0.000; rss: 160MB -> 160MB ( +0MB) finalize_imports time: 0.000; rss: 160MB -> 160MB ( +0MB) resolve_access_levels time: 0.004; rss: 160MB -> 161MB ( +0MB) finalize_macro_resolutions time: 0.105; rss: 161MB -> 178MB ( +18MB) late_resolve_crate time: 0.000; rss: 178MB -> 178MB ( +0MB) resolve_main time: 0.007; rss: 178MB -> 178MB ( +0MB) resolve_check_unused time: 0.000; rss: 178MB -> 178MB ( +0MB) resolve_report_errors time: 0.006; rss: 178MB -> 178MB ( +0MB) resolve_postprocess time: 0.123; rss: 160MB -> 178MB ( +18MB) resolve_crate time: 0.008; rss: 178MB -> 178MB ( +0MB) complete_gated_feature_checking time: 0.473; rss: 63MB -> 178MB ( +116MB) configure_and_expand {"artifact":"/usr/home/liquid/tmp/.tmpKe4xA4/target/debug/deps/combine-6c94c53fb9b103c0.d","emit":"dep-info"} time: 0.000; rss: 178MB -> 178MB ( +0MB) prepare_outputs time: 0.178; rss: 178MB -> 221MB ( +43MB) hir_lowering time: 0.024; rss: 221MB -> 221MB ( +0MB) early_lint_checks time: 0.030; rss: 221MB -> 222MB ( +0MB) drop_ast time: 0.001; rss: 210MB -> 210MB ( +0MB) setup_global_ctxt time: 0.000; rss: 214MB -> 214MB ( +0MB) looking_for_entry_point time: 0.001; rss: 214MB -> 214MB ( +0MB) looking_for_derive_registrar {"message":"unused attribute","code":{"code":"unused_attributes","explanation":null},"level":"warning","spans":[{"file_name":"src/lib.rs","byte_start":19229,"byte_end":19238,"line_start":509,"line_end":509,"column_start":9,"column_end":18,"is_primary":true,"text":[{"text":" #[inline]","highlight_start":9,"highlight_end":18}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/lib.rs","byte_start":13427,"byte_end":13775,"line_start":356,"line_end":364,"column_start":9,"column_end":10,"is_primary":false,"text":[{"text":" $crate::combine_parser_impl!{","highlight_start":9,"highlight_end":38},{"text":" $(#[$derive])*","highlight_start":1,"highlight_end":27},{"text":" $struct_vis struct $type_name;","highlight_start":1,"highlight_end":43},{"text":" (type PartialState = ($partial_state);)","highlight_start":1,"highlight_end":52},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/parser/range.rs","byte_start":1764,"byte_end":2816,"line_start":68,"line_end":98,"column_start":1,"column_end":2,"is_primary":false,"text":[{"text":"parser! {","highlight_start":1,"highlight_end":10},{"text":" #[derive(Clone)]","highlight_start":1,"highlight_end":21},{"text":" pub struct Recognize;","highlight_start":1,"highlight_end":26},{"text":" type PartialState = as Parser>::PartialState;","highlight_start":1,"highlight_end":80},{"text":" /// Zero-copy parser which returns committed input range.","highlight_start":1,"highlight_end":62},{"text":" ///","highlight_start":1,"highlight_end":8},{"text":" /// [`combinator::recognize`][] is a non-`RangeStream` alternative.","highlight_start":1,"highlight_end":72},{"text":" ///","highlight_start":1,"highlight_end":8},{"text":" /// [`combinator::recognize`]: ../../parser/combinator/fn.recognize.html","highlight_start":1,"highlight_end":77},{"text":" /// ```","highlight_start":1,"highlight_end":12},{"text":" /// # extern crate combine;","highlight_start":1,"highlight_end":32},{"text":" /// # use combine::parser::range::recognize;","highlight_start":1,"highlight_end":49},{"text":" /// # use combine::parser::char::letter;","highlight_start":1,"highlight_end":45},{"text":" /// # use combine::*;","highlight_start":1,"highlight_end":26},{"text":" /// # fn main() {","highlight_start":1,"highlight_end":22},{"text":" /// let mut parser = recognize(skip_many1(letter()));","highlight_start":1,"highlight_end":58},{"text":" /// assert_eq!(parser.parse(\"hello world\"), Ok((\"hello\", \" world\")));","highlight_start":1,"highlight_end":74},{"text":" /// assert!(parser.parse(\"!\").is_err());","highlight_start":1,"highlight_end":45},{"text":" /// # }","highlight_start":1,"highlight_end":12},{"text":" /// ```","highlight_start":1,"highlight_end":12},{"text":" #[inline]","highlight_start":1,"highlight_end":14},{"text":" pub fn recognize[Input, P](parser: P)(Input) -> ::Range","highlight_start":1,"highlight_end":81},{"text":" where [","highlight_start":1,"highlight_end":12},{"text":" P: Parser,","highlight_start":1,"highlight_end":26},{"text":" Input: RangeStream,","highlight_start":1,"highlight_end":28},{"text":" ::Range: crate::stream::Range,","highlight_start":1,"highlight_end":60},{"text":" ]","highlight_start":1,"highlight_end":6},{"text":" {","highlight_start":1,"highlight_end":6},{"text":" recognize_with_value(parser).map(|(range, _)| range)","highlight_start":1,"highlight_end":61},{"text":" }","highlight_start":1,"highlight_end":6},{"text":"}","highlight_start":1,"highlight_end":2}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null},"macro_decl_name":"parser!","def_site_span":{"file_name":"src/lib.rs","byte_start":12315,"byte_end":15110,"line_start":326,"line_end":403,"column_start":1,"column_end":2,"is_primary":false,"text":[{"text":"macro_rules! parser {","highlight_start":1,"highlight_end":22},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" type PartialState = $partial_state: ty;","highlight_start":1,"highlight_end":48},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),*)","highlight_start":1,"highlight_end":96},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":" $crate::combine_parser_impl!{","highlight_start":1,"highlight_end":38},{"text":" #[allow(non_camel_case_types)]","highlight_start":1,"highlight_end":43},{"text":" #[doc(hidden)]","highlight_start":1,"highlight_end":27},{"text":" $fn_vis struct $name;","highlight_start":1,"highlight_end":34},{"text":" (type PartialState = ($partial_state);)","highlight_start":1,"highlight_end":52},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" $(#[$derive:meta])*","highlight_start":1,"highlight_end":28},{"text":" $struct_vis: vis struct $type_name: ident;","highlight_start":1,"highlight_end":51},{"text":" type PartialState = $partial_state: ty;","highlight_start":1,"highlight_end":48},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),* )","highlight_start":1,"highlight_end":97},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":" $crate::combine_parser_impl!{","highlight_start":1,"highlight_end":38},{"text":" $(#[$derive])*","highlight_start":1,"highlight_end":27},{"text":" $struct_vis struct $type_name;","highlight_start":1,"highlight_end":43},{"text":" (type PartialState = ($partial_state);)","highlight_start":1,"highlight_end":52},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),*)","highlight_start":1,"highlight_end":96},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":" $crate::combine_parser_impl!{","highlight_start":1,"highlight_end":38},{"text":" #[allow(non_camel_case_types)]","highlight_start":1,"highlight_end":43},{"text":" #[doc(hidden)]","highlight_start":1,"highlight_end":27},{"text":" $fn_vis struct $name;","highlight_start":1,"highlight_end":34},{"text":" (type PartialState = (());)","highlight_start":1,"highlight_end":40},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" $(#[$derive:meta])*","highlight_start":1,"highlight_end":28},{"text":" $struct_vis: vis struct $type_name: ident;","highlight_start":1,"highlight_end":51},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),* )","highlight_start":1,"highlight_end":97},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":" $crate::combine_parser_impl!{","highlight_start":1,"highlight_end":38},{"text":" $(#[$derive])*","highlight_start":1,"highlight_end":27},{"text":" $struct_vis struct $type_name;","highlight_start":1,"highlight_end":43},{"text":" (type PartialState = (());)","highlight_start":1,"highlight_end":40},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":"}","highlight_start":1,"highlight_end":2}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"$crate::combine_parser_impl!","def_site_span":{"file_name":"src/lib.rs","byte_start":15574,"byte_end":19982,"line_start":421,"line_end":528,"column_start":1,"column_end":2,"is_primary":false,"text":[{"text":"macro_rules! combine_parser_impl {","highlight_start":1,"highlight_end":35},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" $(#[$derive:meta])*","highlight_start":1,"highlight_end":28},{"text":" $struct_vis: vis struct $type_name: ident;","highlight_start":1,"highlight_end":51},{"text":" (type PartialState = ($($partial_state: tt)*);)","highlight_start":1,"highlight_end":56},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),*)","highlight_start":1,"highlight_end":96},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":"","highlight_start":1,"highlight_end":1},{"text":" $(#[$derive])*","highlight_start":1,"highlight_end":23},{"text":" $struct_vis struct $type_name<$($type_params)*>","highlight_start":1,"highlight_end":56},{"text":" where <$input_type as $crate::stream::StreamOnce>::Error:","highlight_start":1,"highlight_end":70},{"text":" $crate::error::ParseError<","highlight_start":1,"highlight_end":43},{"text":" <$input_type as $crate::stream::StreamOnce>::Token,","highlight_start":1,"highlight_end":72},{"text":" <$input_type as $crate::stream::StreamOnce>::Range,","highlight_start":1,"highlight_end":72},{"text":" <$input_type as $crate::stream::StreamOnce>::Position","highlight_start":1,"highlight_end":74},{"text":" >,","highlight_start":1,"highlight_end":23},{"text":" $input_type: $crate::stream::Stream,","highlight_start":1,"highlight_end":53},{"text":" $($where_clause)*","highlight_start":1,"highlight_end":34},{"text":" {","highlight_start":1,"highlight_end":10},{"text":" $(pub $arg : $arg_type,)*","highlight_start":1,"highlight_end":38},{"text":" __marker: $crate::lib::marker::PhantomData $output_type>","highlight_start":1,"highlight_end":89},{"text":" }","highlight_start":1,"highlight_end":10},{"text":"","highlight_start":1,"highlight_end":1},{"text":" // We want this to work on older compilers, at least for a while","highlight_start":1,"highlight_end":73},{"text":" #[allow(non_shorthand_field_patterns)]","highlight_start":1,"highlight_end":47},{"text":" impl<$($type_params)*> $crate::Parser<$input_type> for $type_name<$($type_params)*>","highlight_start":1,"highlight_end":92},{"text":" where <$input_type as $crate::stream::StreamOnce>::Error:","highlight_start":1,"highlight_end":70},{"text":" $crate::error::ParseError<","highlight_start":1,"highlight_end":47},{"text":" <$input_type as $crate::stream::StreamOnce>::Token,","highlight_start":1,"highlight_end":76},{"text":" <$input_type as $crate::stream::StreamOnce>::Range,","highlight_start":1,"highlight_end":76},{"text":" <$input_type as $crate::stream::StreamOnce>::Position","highlight_start":1,"highlight_end":78},{"text":" >,","highlight_start":1,"highlight_end":27},{"text":" $input_type: $crate::stream::Stream,","highlight_start":1,"highlight_end":53},{"text":" $($where_clause)*","highlight_start":1,"highlight_end":34},{"text":" {","highlight_start":1,"highlight_end":10},{"text":"","highlight_start":1,"highlight_end":1},{"text":" type Output = $output_type;","highlight_start":1,"highlight_end":40},{"text":" type PartialState = $($partial_state)*;","highlight_start":1,"highlight_end":52},{"text":"","highlight_start":1,"highlight_end":1},{"text":" $crate::parse_mode!($input_type);","highlight_start":1,"highlight_end":46},{"text":" #[inline]","highlight_start":1,"highlight_end":22},{"text":" fn parse_mode_impl(","highlight_start":1,"highlight_end":35},{"text":" &mut self,","highlight_start":1,"highlight_end":27},{"text":" mode: M,","highlight_start":1,"highlight_end":25},{"text":" input: &mut $input_type,","highlight_start":1,"highlight_end":41},{"text":" state: &mut Self::PartialState,","highlight_start":1,"highlight_end":48},{"text":" ) -> $crate::error::ParseResult<$output_type, <$input_type as $crate::stream::StreamOnce>::Error>","highlight_start":1,"highlight_end":114},{"text":" where M: $crate::parser::ParseMode","highlight_start":1,"highlight_end":47},{"text":" {","highlight_start":1,"highlight_end":14},{"text":" let $type_name { $( $arg: ref mut $arg,)* .. } = *self;","highlight_start":1,"highlight_end":72},{"text":" $crate::combine_parse_partial!(($($partial_state)*) mode input state $parser)","highlight_start":1,"highlight_end":94},{"text":" }","highlight_start":1,"highlight_end":14},{"text":"","highlight_start":1,"highlight_end":1},{"text":" #[inline]","highlight_start":1,"highlight_end":22},{"text":" fn add_error(","highlight_start":1,"highlight_end":26},{"text":" &mut self,","highlight_start":1,"highlight_end":27},{"text":" errors: &mut $crate::error::Tracked<","highlight_start":1,"highlight_end":53},{"text":" <$input_type as $crate::stream::StreamOnce>::Error","highlight_start":1,"highlight_end":71},{"text":" >)","highlight_start":1,"highlight_end":23},{"text":" {","highlight_start":1,"highlight_end":14},{"text":" let $type_name { $( $arg : ref mut $arg,)* .. } = *self;","highlight_start":1,"highlight_end":74},{"text":" let mut parser = $parser;","highlight_start":1,"highlight_end":42},{"text":" {","highlight_start":1,"highlight_end":18},{"text":" let _: &mut dyn $crate::Parser< $input_type, Output = $output_type, PartialState = _> = &mut parser;","highlight_start":1,"highlight_end":121},{"text":" }","highlight_start":1,"highlight_end":18},{"text":" parser.add_error(errors)","highlight_start":1,"highlight_end":41},{"text":" }","highlight_start":1,"highlight_end":14},{"text":"","highlight_start":1,"highlight_end":1},{"text":" fn add_committed_expected_error(","highlight_start":1,"highlight_end":45},{"text":" &mut self,","highlight_start":1,"highlight_end":27},{"text":" errors: &mut $crate::error::Tracked<","highlight_start":1,"highlight_end":53},{"text":" <$input_type as $crate::stream::StreamOnce>::Error","highlight_start":1,"highlight_end":71},{"text":" >)","highlight_start":1,"highlight_end":23},{"text":" {","highlight_start":1,"highlight_end":14},{"text":" let $type_name { $( $arg : ref mut $arg,)* .. } = *self;","highlight_start":1,"highlight_end":74},{"text":" let mut parser = $parser;","highlight_start":1,"highlight_end":42},{"text":" {","highlight_start":1,"highlight_end":18},{"text":" let _: &mut dyn $crate::Parser< $input_type, Output = $output_type, PartialState = _> = &mut parser;","highlight_start":1,"highlight_end":121},{"text":" }","highlight_start":1,"highlight_end":18},{"text":" parser.add_committed_expected_error(errors)","highlight_start":1,"highlight_end":60},{"text":" }","highlight_start":1,"highlight_end":14},{"text":" }","highlight_start":1,"highlight_end":10},{"text":"","highlight_start":1,"highlight_end":1},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":21},{"text":" #[inline]","highlight_start":1,"highlight_end":18},{"text":" $fn_vis fn $name< $($type_params)* >(","highlight_start":1,"highlight_end":46},{"text":" $($arg : $arg_type),*","highlight_start":1,"highlight_end":38},{"text":" ) -> $type_name<$($type_params)*>","highlight_start":1,"highlight_end":46},{"text":" where <$input_type as $crate::stream::StreamOnce>::Error:","highlight_start":1,"highlight_end":70},{"text":" $crate::error::ParseError<","highlight_start":1,"highlight_end":47},{"text":" <$input_type as $crate::stream::StreamOnce>::Token,","highlight_start":1,"highlight_end":76},{"text":" <$input_type as $crate::stream::StreamOnce>::Range,","highlight_start":1,"highlight_end":76},{"text":" <$input_type as $crate::stream::StreamOnce>::Position","highlight_start":1,"highlight_end":78},{"text":" >,","highlight_start":1,"highlight_end":27},{"text":" $input_type: $crate::stream::Stream,","highlight_start":1,"highlight_end":53},{"text":" $($where_clause)*","highlight_start":1,"highlight_end":34},{"text":" {","highlight_start":1,"highlight_end":10},{"text":" $type_name {","highlight_start":1,"highlight_end":25},{"text":" $($arg,)*","highlight_start":1,"highlight_end":26},{"text":" __marker: $crate::lib::marker::PhantomData","highlight_start":1,"highlight_end":59},{"text":" }","highlight_start":1,"highlight_end":14},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":"}","highlight_start":1,"highlight_end":2}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}}],"children":[{"message":"`#[warn(unused_attributes)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"attribute also specified here","code":null,"level":"note","spans":[{"file_name":"src/lib.rs","byte_start":19210,"byte_end":19218,"line_start":508,"line_end":508,"column_start":11,"column_end":19,"is_primary":true,"text":[{"text":" $(#[$attr])*","highlight_start":11,"highlight_end":19}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/lib.rs","byte_start":13427,"byte_end":13775,"line_start":356,"line_end":364,"column_start":9,"column_end":10,"is_primary":false,"text":[{"text":" $crate::combine_parser_impl!{","highlight_start":9,"highlight_end":38},{"text":" $(#[$derive])*","highlight_start":1,"highlight_end":27},{"text":" $struct_vis struct $type_name;","highlight_start":1,"highlight_end":43},{"text":" (type PartialState = ($partial_state);)","highlight_start":1,"highlight_end":52},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/parser/range.rs","byte_start":1764,"byte_end":2816,"line_start":68,"line_end":98,"column_start":1,"column_end":2,"is_primary":false,"text":[{"text":"parser! {","highlight_start":1,"highlight_end":10},{"text":" #[derive(Clone)]","highlight_start":1,"highlight_end":21},{"text":" pub struct Recognize;","highlight_start":1,"highlight_end":26},{"text":" type PartialState = as Parser>::PartialState;","highlight_start":1,"highlight_end":80},{"text":" /// Zero-copy parser which returns committed input range.","highlight_start":1,"highlight_end":62},{"text":" ///","highlight_start":1,"highlight_end":8},{"text":" /// [`combinator::recognize`][] is a non-`RangeStream` alternative.","highlight_start":1,"highlight_end":72},{"text":" ///","highlight_start":1,"highlight_end":8},{"text":" /// [`combinator::recognize`]: ../../parser/combinator/fn.recognize.html","highlight_start":1,"highlight_end":77},{"text":" /// ```","highlight_start":1,"highlight_end":12},{"text":" /// # extern crate combine;","highlight_start":1,"highlight_end":32},{"text":" /// # use combine::parser::range::recognize;","highlight_start":1,"highlight_end":49},{"text":" /// # use combine::parser::char::letter;","highlight_start":1,"highlight_end":45},{"text":" /// # use combine::*;","highlight_start":1,"highlight_end":26},{"text":" /// # fn main() {","highlight_start":1,"highlight_end":22},{"text":" /// let mut parser = recognize(skip_many1(letter()));","highlight_start":1,"highlight_end":58},{"text":" /// assert_eq!(parser.parse(\"hello world\"), Ok((\"hello\", \" world\")));","highlight_start":1,"highlight_end":74},{"text":" /// assert!(parser.parse(\"!\").is_err());","highlight_start":1,"highlight_end":45},{"text":" /// # }","highlight_start":1,"highlight_end":12},{"text":" /// ```","highlight_start":1,"highlight_end":12},{"text":" #[inline]","highlight_start":1,"highlight_end":14},{"text":" pub fn recognize[Input, P](parser: P)(Input) -> ::Range","highlight_start":1,"highlight_end":81},{"text":" where [","highlight_start":1,"highlight_end":12},{"text":" P: Parser,","highlight_start":1,"highlight_end":26},{"text":" Input: RangeStream,","highlight_start":1,"highlight_end":28},{"text":" ::Range: crate::stream::Range,","highlight_start":1,"highlight_end":60},{"text":" ]","highlight_start":1,"highlight_end":6},{"text":" {","highlight_start":1,"highlight_end":6},{"text":" recognize_with_value(parser).map(|(range, _)| range)","highlight_start":1,"highlight_end":61},{"text":" }","highlight_start":1,"highlight_end":6},{"text":"}","highlight_start":1,"highlight_end":2}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null},"macro_decl_name":"parser!","def_site_span":{"file_name":"src/lib.rs","byte_start":12315,"byte_end":15110,"line_start":326,"line_end":403,"column_start":1,"column_end":2,"is_primary":false,"text":[{"text":"macro_rules! parser {","highlight_start":1,"highlight_end":22},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" type PartialState = $partial_state: ty;","highlight_start":1,"highlight_end":48},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),*)","highlight_start":1,"highlight_end":96},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":" $crate::combine_parser_impl!{","highlight_start":1,"highlight_end":38},{"text":" #[allow(non_camel_case_types)]","highlight_start":1,"highlight_end":43},{"text":" #[doc(hidden)]","highlight_start":1,"highlight_end":27},{"text":" $fn_vis struct $name;","highlight_start":1,"highlight_end":34},{"text":" (type PartialState = ($partial_state);)","highlight_start":1,"highlight_end":52},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" $(#[$derive:meta])*","highlight_start":1,"highlight_end":28},{"text":" $struct_vis: vis struct $type_name: ident;","highlight_start":1,"highlight_end":51},{"text":" type PartialState = $partial_state: ty;","highlight_start":1,"highlight_end":48},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),* )","highlight_start":1,"highlight_end":97},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":" $crate::combine_parser_impl!{","highlight_start":1,"highlight_end":38},{"text":" $(#[$derive])*","highlight_start":1,"highlight_end":27},{"text":" $struct_vis struct $type_name;","highlight_start":1,"highlight_end":43},{"text":" (type PartialState = ($partial_state);)","highlight_start":1,"highlight_end":52},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),*)","highlight_start":1,"highlight_end":96},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":" $crate::combine_parser_impl!{","highlight_start":1,"highlight_end":38},{"text":" #[allow(non_camel_case_types)]","highlight_start":1,"highlight_end":43},{"text":" #[doc(hidden)]","highlight_start":1,"highlight_end":27},{"text":" $fn_vis struct $name;","highlight_start":1,"highlight_end":34},{"text":" (type PartialState = (());)","highlight_start":1,"highlight_end":40},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" $(#[$derive:meta])*","highlight_start":1,"highlight_end":28},{"text":" $struct_vis: vis struct $type_name: ident;","highlight_start":1,"highlight_end":51},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),* )","highlight_start":1,"highlight_end":97},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":" $crate::combine_parser_impl!{","highlight_start":1,"highlight_end":38},{"text":" $(#[$derive])*","highlight_start":1,"highlight_end":27},{"text":" $struct_vis struct $type_name;","highlight_start":1,"highlight_end":43},{"text":" (type PartialState = (());)","highlight_start":1,"highlight_end":40},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":"}","highlight_start":1,"highlight_end":2}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"$crate::combine_parser_impl!","def_site_span":{"file_name":"src/lib.rs","byte_start":15574,"byte_end":19982,"line_start":421,"line_end":528,"column_start":1,"column_end":2,"is_primary":false,"text":[{"text":"macro_rules! combine_parser_impl {","highlight_start":1,"highlight_end":35},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" $(#[$derive:meta])*","highlight_start":1,"highlight_end":28},{"text":" $struct_vis: vis struct $type_name: ident;","highlight_start":1,"highlight_end":51},{"text":" (type PartialState = ($($partial_state: tt)*);)","highlight_start":1,"highlight_end":56},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),*)","highlight_start":1,"highlight_end":96},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":"","highlight_start":1,"highlight_end":1},{"text":" $(#[$derive])*","highlight_start":1,"highlight_end":23},{"text":" $struct_vis struct $type_name<$($type_params)*>","highlight_start":1,"highlight_end":56},{"text":" where <$input_type as $crate::stream::StreamOnce>::Error:","highlight_start":1,"highlight_end":70},{"text":" $crate::error::ParseError<","highlight_start":1,"highlight_end":43},{"text":" <$input_type as $crate::stream::StreamOnce>::Token,","highlight_start":1,"highlight_end":72},{"text":" <$input_type as $crate::stream::StreamOnce>::Range,","highlight_start":1,"highlight_end":72},{"text":" <$input_type as $crate::stream::StreamOnce>::Position","highlight_start":1,"highlight_end":74},{"text":" >,","highlight_start":1,"highlight_end":23},{"text":" $input_type: $crate::stream::Stream,","highlight_start":1,"highlight_end":53},{"text":" $($where_clause)*","highlight_start":1,"highlight_end":34},{"text":" {","highlight_start":1,"highlight_end":10},{"text":" $(pub $arg : $arg_type,)*","highlight_start":1,"highlight_end":38},{"text":" __marker: $crate::lib::marker::PhantomData $output_type>","highlight_start":1,"highlight_end":89},{"text":" }","highlight_start":1,"highlight_end":10},{"text":"","highlight_start":1,"highlight_end":1},{"text":" // We want this to work on older compilers, at least for a while","highlight_start":1,"highlight_end":73},{"text":" #[allow(non_shorthand_field_patterns)]","highlight_start":1,"highlight_end":47},{"text":" impl<$($type_params)*> $crate::Parser<$input_type> for $type_name<$($type_params)*>","highlight_start":1,"highlight_end":92},{"text":" where <$input_type as $crate::stream::StreamOnce>::Error:","highlight_start":1,"highlight_end":70},{"text":" $crate::error::ParseError<","highlight_start":1,"highlight_end":47},{"text":" <$input_type as $crate::stream::StreamOnce>::Token,","highlight_start":1,"highlight_end":76},{"text":" <$input_type as $crate::stream::StreamOnce>::Range,","highlight_start":1,"highlight_end":76},{"text":" <$input_type as $crate::stream::StreamOnce>::Position","highlight_start":1,"highlight_end":78},{"text":" >,","highlight_start":1,"highlight_end":27},{"text":" $input_type: $crate::stream::Stream,","highlight_start":1,"highlight_end":53},{"text":" $($where_clause)*","highlight_start":1,"highlight_end":34},{"text":" {","highlight_start":1,"highlight_end":10},{"text":"","highlight_start":1,"highlight_end":1},{"text":" type Output = $output_type;","highlight_start":1,"highlight_end":40},{"text":" type PartialState = $($partial_state)*;","highlight_start":1,"highlight_end":52},{"text":"","highlight_start":1,"highlight_end":1},{"text":" $crate::parse_mode!($input_type);","highlight_start":1,"highlight_end":46},{"text":" #[inline]","highlight_start":1,"highlight_end":22},{"text":" fn parse_mode_impl(","highlight_start":1,"highlight_end":35},{"text":" &mut self,","highlight_start":1,"highlight_end":27},{"text":" mode: M,","highlight_start":1,"highlight_end":25},{"text":" input: &mut $input_type,","highlight_start":1,"highlight_end":41},{"text":" state: &mut Self::PartialState,","highlight_start":1,"highlight_end":48},{"text":" ) -> $crate::error::ParseResult<$output_type, <$input_type as $crate::stream::StreamOnce>::Error>","highlight_start":1,"highlight_end":114},{"text":" where M: $crate::parser::ParseMode","highlight_start":1,"highlight_end":47},{"text":" {","highlight_start":1,"highlight_end":14},{"text":" let $type_name { $( $arg: ref mut $arg,)* .. } = *self;","highlight_start":1,"highlight_end":72},{"text":" $crate::combine_parse_partial!(($($partial_state)*) mode input state $parser)","highlight_start":1,"highlight_end":94},{"text":" }","highlight_start":1,"highlight_end":14},{"text":"","highlight_start":1,"highlight_end":1},{"text":" #[inline]","highlight_start":1,"highlight_end":22},{"text":" fn add_error(","highlight_start":1,"highlight_end":26},{"text":" &mut self,","highlight_start":1,"highlight_end":27},{"text":" errors: &mut $crate::error::Tracked<","highlight_start":1,"highlight_end":53},{"text":" <$input_type as $crate::stream::StreamOnce>::Error","highlight_start":1,"highlight_end":71},{"text":" >)","highlight_start":1,"highlight_end":23},{"text":" {","highlight_start":1,"highlight_end":14},{"text":" let $type_name { $( $arg : ref mut $arg,)* .. } = *self;","highlight_start":1,"highlight_end":74},{"text":" let mut parser = $parser;","highlight_start":1,"highlight_end":42},{"text":" {","highlight_start":1,"highlight_end":18},{"text":" let _: &mut dyn $crate::Parser< $input_type, Output = $output_type, PartialState = _> = &mut parser;","highlight_start":1,"highlight_end":121},{"text":" }","highlight_start":1,"highlight_end":18},{"text":" parser.add_error(errors)","highlight_start":1,"highlight_end":41},{"text":" }","highlight_start":1,"highlight_end":14},{"text":"","highlight_start":1,"highlight_end":1},{"text":" fn add_committed_expected_error(","highlight_start":1,"highlight_end":45},{"text":" &mut self,","highlight_start":1,"highlight_end":27},{"text":" errors: &mut $crate::error::Tracked<","highlight_start":1,"highlight_end":53},{"text":" <$input_type as $crate::stream::StreamOnce>::Error","highlight_start":1,"highlight_end":71},{"text":" >)","highlight_start":1,"highlight_end":23},{"text":" {","highlight_start":1,"highlight_end":14},{"text":" let $type_name { $( $arg : ref mut $arg,)* .. } = *self;","highlight_start":1,"highlight_end":74},{"text":" let mut parser = $parser;","highlight_start":1,"highlight_end":42},{"text":" {","highlight_start":1,"highlight_end":18},{"text":" let _: &mut dyn $crate::Parser< $input_type, Output = $output_type, PartialState = _> = &mut parser;","highlight_start":1,"highlight_end":121},{"text":" }","highlight_start":1,"highlight_end":18},{"text":" parser.add_committed_expected_error(errors)","highlight_start":1,"highlight_end":60},{"text":" }","highlight_start":1,"highlight_end":14},{"text":" }","highlight_start":1,"highlight_end":10},{"text":"","highlight_start":1,"highlight_end":1},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":21},{"text":" #[inline]","highlight_start":1,"highlight_end":18},{"text":" $fn_vis fn $name< $($type_params)* >(","highlight_start":1,"highlight_end":46},{"text":" $($arg : $arg_type),*","highlight_start":1,"highlight_end":38},{"text":" ) -> $type_name<$($type_params)*>","highlight_start":1,"highlight_end":46},{"text":" where <$input_type as $crate::stream::StreamOnce>::Error:","highlight_start":1,"highlight_end":70},{"text":" $crate::error::ParseError<","highlight_start":1,"highlight_end":47},{"text":" <$input_type as $crate::stream::StreamOnce>::Token,","highlight_start":1,"highlight_end":76},{"text":" <$input_type as $crate::stream::StreamOnce>::Range,","highlight_start":1,"highlight_end":76},{"text":" <$input_type as $crate::stream::StreamOnce>::Position","highlight_start":1,"highlight_end":78},{"text":" >,","highlight_start":1,"highlight_end":27},{"text":" $input_type: $crate::stream::Stream,","highlight_start":1,"highlight_end":53},{"text":" $($where_clause)*","highlight_start":1,"highlight_end":34},{"text":" {","highlight_start":1,"highlight_end":10},{"text":" $type_name {","highlight_start":1,"highlight_end":25},{"text":" $($arg,)*","highlight_start":1,"highlight_end":26},{"text":" __marker: $crate::lib::marker::PhantomData","highlight_start":1,"highlight_end":59},{"text":" }","highlight_start":1,"highlight_end":14},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":"}","highlight_start":1,"highlight_end":2}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}}],"children":[],"rendered":null},{"message":"this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!","code":null,"level":"warning","spans":[],"children":[],"rendered":null},{"message":"remove this attribute","code":null,"level":"help","spans":[{"file_name":"src/lib.rs","byte_start":19229,"byte_end":19238,"line_start":509,"line_end":509,"column_start":9,"column_end":18,"is_primary":true,"text":[{"text":" #[inline]","highlight_start":9,"highlight_end":18}],"label":null,"suggested_replacement":"","suggestion_applicability":"MachineApplicable","expansion":{"span":{"file_name":"src/lib.rs","byte_start":13427,"byte_end":13775,"line_start":356,"line_end":364,"column_start":9,"column_end":10,"is_primary":false,"text":[{"text":" $crate::combine_parser_impl!{","highlight_start":9,"highlight_end":38},{"text":" $(#[$derive])*","highlight_start":1,"highlight_end":27},{"text":" $struct_vis struct $type_name;","highlight_start":1,"highlight_end":43},{"text":" (type PartialState = ($partial_state);)","highlight_start":1,"highlight_end":52},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/parser/range.rs","byte_start":1764,"byte_end":2816,"line_start":68,"line_end":98,"column_start":1,"column_end":2,"is_primary":false,"text":[{"text":"parser! {","highlight_start":1,"highlight_end":10},{"text":" #[derive(Clone)]","highlight_start":1,"highlight_end":21},{"text":" pub struct Recognize;","highlight_start":1,"highlight_end":26},{"text":" type PartialState = as Parser>::PartialState;","highlight_start":1,"highlight_end":80},{"text":" /// Zero-copy parser which returns committed input range.","highlight_start":1,"highlight_end":62},{"text":" ///","highlight_start":1,"highlight_end":8},{"text":" /// [`combinator::recognize`][] is a non-`RangeStream` alternative.","highlight_start":1,"highlight_end":72},{"text":" ///","highlight_start":1,"highlight_end":8},{"text":" /// [`combinator::recognize`]: ../../parser/combinator/fn.recognize.html","highlight_start":1,"highlight_end":77},{"text":" /// ```","highlight_start":1,"highlight_end":12},{"text":" /// # extern crate combine;","highlight_start":1,"highlight_end":32},{"text":" /// # use combine::parser::range::recognize;","highlight_start":1,"highlight_end":49},{"text":" /// # use combine::parser::char::letter;","highlight_start":1,"highlight_end":45},{"text":" /// # use combine::*;","highlight_start":1,"highlight_end":26},{"text":" /// # fn main() {","highlight_start":1,"highlight_end":22},{"text":" /// let mut parser = recognize(skip_many1(letter()));","highlight_start":1,"highlight_end":58},{"text":" /// assert_eq!(parser.parse(\"hello world\"), Ok((\"hello\", \" world\")));","highlight_start":1,"highlight_end":74},{"text":" /// assert!(parser.parse(\"!\").is_err());","highlight_start":1,"highlight_end":45},{"text":" /// # }","highlight_start":1,"highlight_end":12},{"text":" /// ```","highlight_start":1,"highlight_end":12},{"text":" #[inline]","highlight_start":1,"highlight_end":14},{"text":" pub fn recognize[Input, P](parser: P)(Input) -> ::Range","highlight_start":1,"highlight_end":81},{"text":" where [","highlight_start":1,"highlight_end":12},{"text":" P: Parser,","highlight_start":1,"highlight_end":26},{"text":" Input: RangeStream,","highlight_start":1,"highlight_end":28},{"text":" ::Range: crate::stream::Range,","highlight_start":1,"highlight_end":60},{"text":" ]","highlight_start":1,"highlight_end":6},{"text":" {","highlight_start":1,"highlight_end":6},{"text":" recognize_with_value(parser).map(|(range, _)| range)","highlight_start":1,"highlight_end":61},{"text":" }","highlight_start":1,"highlight_end":6},{"text":"}","highlight_start":1,"highlight_end":2}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null},"macro_decl_name":"parser!","def_site_span":{"file_name":"src/lib.rs","byte_start":12315,"byte_end":15110,"line_start":326,"line_end":403,"column_start":1,"column_end":2,"is_primary":false,"text":[{"text":"macro_rules! parser {","highlight_start":1,"highlight_end":22},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" type PartialState = $partial_state: ty;","highlight_start":1,"highlight_end":48},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),*)","highlight_start":1,"highlight_end":96},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":" $crate::combine_parser_impl!{","highlight_start":1,"highlight_end":38},{"text":" #[allow(non_camel_case_types)]","highlight_start":1,"highlight_end":43},{"text":" #[doc(hidden)]","highlight_start":1,"highlight_end":27},{"text":" $fn_vis struct $name;","highlight_start":1,"highlight_end":34},{"text":" (type PartialState = ($partial_state);)","highlight_start":1,"highlight_end":52},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" $(#[$derive:meta])*","highlight_start":1,"highlight_end":28},{"text":" $struct_vis: vis struct $type_name: ident;","highlight_start":1,"highlight_end":51},{"text":" type PartialState = $partial_state: ty;","highlight_start":1,"highlight_end":48},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),* )","highlight_start":1,"highlight_end":97},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":" $crate::combine_parser_impl!{","highlight_start":1,"highlight_end":38},{"text":" $(#[$derive])*","highlight_start":1,"highlight_end":27},{"text":" $struct_vis struct $type_name;","highlight_start":1,"highlight_end":43},{"text":" (type PartialState = ($partial_state);)","highlight_start":1,"highlight_end":52},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),*)","highlight_start":1,"highlight_end":96},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":" $crate::combine_parser_impl!{","highlight_start":1,"highlight_end":38},{"text":" #[allow(non_camel_case_types)]","highlight_start":1,"highlight_end":43},{"text":" #[doc(hidden)]","highlight_start":1,"highlight_end":27},{"text":" $fn_vis struct $name;","highlight_start":1,"highlight_end":34},{"text":" (type PartialState = (());)","highlight_start":1,"highlight_end":40},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" $(#[$derive:meta])*","highlight_start":1,"highlight_end":28},{"text":" $struct_vis: vis struct $type_name: ident;","highlight_start":1,"highlight_end":51},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),* )","highlight_start":1,"highlight_end":97},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":" $crate::combine_parser_impl!{","highlight_start":1,"highlight_end":38},{"text":" $(#[$derive])*","highlight_start":1,"highlight_end":27},{"text":" $struct_vis struct $type_name;","highlight_start":1,"highlight_end":43},{"text":" (type PartialState = (());)","highlight_start":1,"highlight_end":40},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":25},{"text":" $fn_vis fn $name [$($type_params)*]($($arg : $arg_type),*)($input_type) -> $output_type","highlight_start":1,"highlight_end":100},{"text":" where [$($where_clause)*]","highlight_start":1,"highlight_end":42},{"text":" $parser","highlight_start":1,"highlight_end":20},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":"}","highlight_start":1,"highlight_end":2}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"$crate::combine_parser_impl!","def_site_span":{"file_name":"src/lib.rs","byte_start":15574,"byte_end":19982,"line_start":421,"line_end":528,"column_start":1,"column_end":2,"is_primary":false,"text":[{"text":"macro_rules! combine_parser_impl {","highlight_start":1,"highlight_end":35},{"text":" (","highlight_start":1,"highlight_end":6},{"text":" $(#[$derive:meta])*","highlight_start":1,"highlight_end":28},{"text":" $struct_vis: vis struct $type_name: ident;","highlight_start":1,"highlight_end":51},{"text":" (type PartialState = ($($partial_state: tt)*);)","highlight_start":1,"highlight_end":56},{"text":" $(#[$attr:meta])*","highlight_start":1,"highlight_end":26},{"text":" $fn_vis: vis fn $name: ident [$($type_params: tt)*]( $($arg: ident : $arg_type: ty),*)","highlight_start":1,"highlight_end":96},{"text":" ($input_type: ty) -> $output_type: ty","highlight_start":1,"highlight_end":50},{"text":" where [$($where_clause: tt)*]","highlight_start":1,"highlight_end":42},{"text":" $parser: block","highlight_start":1,"highlight_end":23},{"text":" ) => {","highlight_start":1,"highlight_end":11},{"text":"","highlight_start":1,"highlight_end":1},{"text":" $(#[$derive])*","highlight_start":1,"highlight_end":23},{"text":" $struct_vis struct $type_name<$($type_params)*>","highlight_start":1,"highlight_end":56},{"text":" where <$input_type as $crate::stream::StreamOnce>::Error:","highlight_start":1,"highlight_end":70},{"text":" $crate::error::ParseError<","highlight_start":1,"highlight_end":43},{"text":" <$input_type as $crate::stream::StreamOnce>::Token,","highlight_start":1,"highlight_end":72},{"text":" <$input_type as $crate::stream::StreamOnce>::Range,","highlight_start":1,"highlight_end":72},{"text":" <$input_type as $crate::stream::StreamOnce>::Position","highlight_start":1,"highlight_end":74},{"text":" >,","highlight_start":1,"highlight_end":23},{"text":" $input_type: $crate::stream::Stream,","highlight_start":1,"highlight_end":53},{"text":" $($where_clause)*","highlight_start":1,"highlight_end":34},{"text":" {","highlight_start":1,"highlight_end":10},{"text":" $(pub $arg : $arg_type,)*","highlight_start":1,"highlight_end":38},{"text":" __marker: $crate::lib::marker::PhantomData $output_type>","highlight_start":1,"highlight_end":89},{"text":" }","highlight_start":1,"highlight_end":10},{"text":"","highlight_start":1,"highlight_end":1},{"text":" // We want this to work on older compilers, at least for a while","highlight_start":1,"highlight_end":73},{"text":" #[allow(non_shorthand_field_patterns)]","highlight_start":1,"highlight_end":47},{"text":" impl<$($type_params)*> $crate::Parser<$input_type> for $type_name<$($type_params)*>","highlight_start":1,"highlight_end":92},{"text":" where <$input_type as $crate::stream::StreamOnce>::Error:","highlight_start":1,"highlight_end":70},{"text":" $crate::error::ParseError<","highlight_start":1,"highlight_end":47},{"text":" <$input_type as $crate::stream::StreamOnce>::Token,","highlight_start":1,"highlight_end":76},{"text":" <$input_type as $crate::stream::StreamOnce>::Range,","highlight_start":1,"highlight_end":76},{"text":" <$input_type as $crate::stream::StreamOnce>::Position","highlight_start":1,"highlight_end":78},{"text":" >,","highlight_start":1,"highlight_end":27},{"text":" $input_type: $crate::stream::Stream,","highlight_start":1,"highlight_end":53},{"text":" $($where_clause)*","highlight_start":1,"highlight_end":34},{"text":" {","highlight_start":1,"highlight_end":10},{"text":"","highlight_start":1,"highlight_end":1},{"text":" type Output = $output_type;","highlight_start":1,"highlight_end":40},{"text":" type PartialState = $($partial_state)*;","highlight_start":1,"highlight_end":52},{"text":"","highlight_start":1,"highlight_end":1},{"text":" $crate::parse_mode!($input_type);","highlight_start":1,"highlight_end":46},{"text":" #[inline]","highlight_start":1,"highlight_end":22},{"text":" fn parse_mode_impl(","highlight_start":1,"highlight_end":35},{"text":" &mut self,","highlight_start":1,"highlight_end":27},{"text":" mode: M,","highlight_start":1,"highlight_end":25},{"text":" input: &mut $input_type,","highlight_start":1,"highlight_end":41},{"text":" state: &mut Self::PartialState,","highlight_start":1,"highlight_end":48},{"text":" ) -> $crate::error::ParseResult<$output_type, <$input_type as $crate::stream::StreamOnce>::Error>","highlight_start":1,"highlight_end":114},{"text":" where M: $crate::parser::ParseMode","highlight_start":1,"highlight_end":47},{"text":" {","highlight_start":1,"highlight_end":14},{"text":" let $type_name { $( $arg: ref mut $arg,)* .. } = *self;","highlight_start":1,"highlight_end":72},{"text":" $crate::combine_parse_partial!(($($partial_state)*) mode input state $parser)","highlight_start":1,"highlight_end":94},{"text":" }","highlight_start":1,"highlight_end":14},{"text":"","highlight_start":1,"highlight_end":1},{"text":" #[inline]","highlight_start":1,"highlight_end":22},{"text":" fn add_error(","highlight_start":1,"highlight_end":26},{"text":" &mut self,","highlight_start":1,"highlight_end":27},{"text":" errors: &mut $crate::error::Tracked<","highlight_start":1,"highlight_end":53},{"text":" <$input_type as $crate::stream::StreamOnce>::Error","highlight_start":1,"highlight_end":71},{"text":" >)","highlight_start":1,"highlight_end":23},{"text":" {","highlight_start":1,"highlight_end":14},{"text":" let $type_name { $( $arg : ref mut $arg,)* .. } = *self;","highlight_start":1,"highlight_end":74},{"text":" let mut parser = $parser;","highlight_start":1,"highlight_end":42},{"text":" {","highlight_start":1,"highlight_end":18},{"text":" let _: &mut dyn $crate::Parser< $input_type, Output = $output_type, PartialState = _> = &mut parser;","highlight_start":1,"highlight_end":121},{"text":" }","highlight_start":1,"highlight_end":18},{"text":" parser.add_error(errors)","highlight_start":1,"highlight_end":41},{"text":" }","highlight_start":1,"highlight_end":14},{"text":"","highlight_start":1,"highlight_end":1},{"text":" fn add_committed_expected_error(","highlight_start":1,"highlight_end":45},{"text":" &mut self,","highlight_start":1,"highlight_end":27},{"text":" errors: &mut $crate::error::Tracked<","highlight_start":1,"highlight_end":53},{"text":" <$input_type as $crate::stream::StreamOnce>::Error","highlight_start":1,"highlight_end":71},{"text":" >)","highlight_start":1,"highlight_end":23},{"text":" {","highlight_start":1,"highlight_end":14},{"text":" let $type_name { $( $arg : ref mut $arg,)* .. } = *self;","highlight_start":1,"highlight_end":74},{"text":" let mut parser = $parser;","highlight_start":1,"highlight_end":42},{"text":" {","highlight_start":1,"highlight_end":18},{"text":" let _: &mut dyn $crate::Parser< $input_type, Output = $output_type, PartialState = _> = &mut parser;","highlight_start":1,"highlight_end":121},{"text":" }","highlight_start":1,"highlight_end":18},{"text":" parser.add_committed_expected_error(errors)","highlight_start":1,"highlight_end":60},{"text":" }","highlight_start":1,"highlight_end":14},{"text":" }","highlight_start":1,"highlight_end":10},{"text":"","highlight_start":1,"highlight_end":1},{"text":" $(#[$attr])*","highlight_start":1,"highlight_end":21},{"text":" #[inline]","highlight_start":1,"highlight_end":18},{"text":" $fn_vis fn $name< $($type_params)* >(","highlight_start":1,"highlight_end":46},{"text":" $($arg : $arg_type),*","highlight_start":1,"highlight_end":38},{"text":" ) -> $type_name<$($type_params)*>","highlight_start":1,"highlight_end":46},{"text":" where <$input_type as $crate::stream::StreamOnce>::Error:","highlight_start":1,"highlight_end":70},{"text":" $crate::error::ParseError<","highlight_start":1,"highlight_end":47},{"text":" <$input_type as $crate::stream::StreamOnce>::Token,","highlight_start":1,"highlight_end":76},{"text":" <$input_type as $crate::stream::StreamOnce>::Range,","highlight_start":1,"highlight_end":76},{"text":" <$input_type as $crate::stream::StreamOnce>::Position","highlight_start":1,"highlight_end":78},{"text":" >,","highlight_start":1,"highlight_end":27},{"text":" $input_type: $crate::stream::Stream,","highlight_start":1,"highlight_end":53},{"text":" $($where_clause)*","highlight_start":1,"highlight_end":34},{"text":" {","highlight_start":1,"highlight_end":10},{"text":" $type_name {","highlight_start":1,"highlight_end":25},{"text":" $($arg,)*","highlight_start":1,"highlight_end":26},{"text":" __marker: $crate::lib::marker::PhantomData","highlight_start":1,"highlight_end":59},{"text":" }","highlight_start":1,"highlight_end":14},{"text":" }","highlight_start":1,"highlight_end":10},{"text":" };","highlight_start":1,"highlight_end":7},{"text":"}","highlight_start":1,"highlight_end":2}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}}],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: unused attribute\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0msrc/lib.rs:509:9\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m509\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m \u001b[0m\u001b[0m #[inline]\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33mhelp: remove this attribute\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m::: \u001b[0m\u001b[0msrc/parser/range.rs:68:1\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m68\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m/\u001b[0m\u001b[0m \u001b[0m\u001b[0mparser! {\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m69\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m #[derive(Clone)]\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m70\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m pub struct Recognize;\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m71\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m type PartialState = as Parser>::PartialState;\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m...\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m97\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m }\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m98\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m}\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|_-\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12min this macro invocation\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(unused_attributes)]` on by default\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;10mnote\u001b[0m\u001b[0m: attribute also specified here\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0msrc/lib.rs:508:11\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m508\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m \u001b[0m\u001b[0m $(#[$attr])*\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;10m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m::: \u001b[0m\u001b[0msrc/parser/range.rs:68:1\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m68\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m/\u001b[0m\u001b[0m \u001b[0m\u001b[0mparser! {\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m69\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m #[derive(Clone)]\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m70\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m pub struct Recognize;\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m71\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m type PartialState = as Parser>::PartialState;\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m...\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m97\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m }\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m98\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m}\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|_-\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12min this macro invocation\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mwarning\u001b[0m\u001b[0m: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: this warning originates in the macro `$crate::combine_parser_impl` (in Nightly builds, run with -Z macro-backtrace for more info)\u001b[0m\n\n"} time: 0.051; rss: 214MB -> 214MB ( +0MB) misc_checking_1 time: 0.077; rss: 214MB -> 233MB ( +19MB) type_collecting time: 0.002; rss: 233MB -> 233MB ( +0MB) impl_wf_inference time: 0.000; rss: 233MB -> 233MB ( +0MB) unsafety_checking time: 0.018; rss: 233MB -> 248MB ( +15MB) coherence_checking time: 0.463; rss: 248MB -> 253MB ( +5MB) wf_checking time: 0.314; rss: 253MB -> 264MB ( +11MB) item_types_checking time: 2.966; rss: 264MB -> 309MB ( +45MB) item_bodies_checking time: 3.843; rss: 214MB -> 309MB ( +95MB) type_check_crate time: 0.040; rss: 309MB -> 309MB ( +0MB) match_checking time: 0.030; rss: 309MB -> 309MB ( +0MB) liveness_and_intrinsic_checking time: 0.070; rss: 309MB -> 309MB ( +0MB) misc_checking_2 time: 1.967; rss: 309MB -> 366MB ( +58MB) MIR_borrow_checking time: 0.004; rss: 366MB -> 366MB ( +0MB) MIR_effect_checking time: 0.000; rss: 366MB -> 366MB ( +0MB) layout_testing time: 0.019; rss: 367MB -> 367MB ( +0MB) death_checking time: 0.000; rss: 367MB -> 367MB ( +0MB) unused_lib_feature_checking time: 0.029; rss: 367MB -> 367MB ( +0MB) crate_lints time: 0.050; rss: 367MB -> 367MB ( +0MB) module_lints time: 0.079; rss: 367MB -> 367MB ( +0MB) lint_checking time: 0.103; rss: 367MB -> 367MB ( +0MB) privacy_checking_modules time: 0.236; rss: 366MB -> 367MB ( +1MB) misc_checking_3 time: 0.001; rss: 389MB -> 389MB ( +0MB) monomorphization_collector_root_collections time: 0.008; rss: 389MB -> 390MB ( +1MB) monomorphization_collector_graph_walk time: 0.001; rss: 390MB -> 391MB ( +0MB) partition_and_assert_distinct_symbols time: 0.766; rss: 367MB -> 402MB ( +35MB) generate_crate_metadata {"artifact":"/usr/home/liquid/tmp/.tmpKe4xA4/target/debug/deps/libcombine-6c94c53fb9b103c0.rmeta","emit":"metadata"} time: 0.000; rss: 402MB -> 402MB ( +0MB) find_cgu_reuse time: 0.027; rss: 402MB -> 421MB ( +20MB) codegen_to_LLVM_IR time: 0.029; rss: 402MB -> 421MB ( +20MB) codegen_crate time: 0.000; rss: 421MB -> 421MB ( +0MB) serialize_dep_graph time: 0.036; rss: 407MB -> 346MB ( -62MB) LLVM_passes(crate) time: 0.039; rss: 421MB -> 346MB ( -76MB) free_global_ctxt time: 0.000; rss: 346MB -> 346MB ( +0MB) join_worker_thread time: 0.000; rss: 346MB -> 346MB ( +0MB) finish_ongoing_codegen time: 0.000; rss: 346MB -> 346MB ( +0MB) llvm_dump_timing_file time: 0.000; rss: 346MB -> 346MB ( +0MB) serialize_work_products time: 0.000; rss: 346MB -> 346MB ( +0MB) link_binary_check_files_are_writeable time: 0.014; rss: 346MB -> 347MB ( +1MB) link_rlib {"artifact":"/usr/home/liquid/tmp/.tmpKe4xA4/target/debug/deps/libcombine-6c94c53fb9b103c0.rlib","emit":"link"} time: 0.000; rss: 347MB -> 347MB ( +0MB) link_binary_remove_temps time: 0.016; rss: 346MB -> 347MB ( +1MB) link_binary time: 0.016; rss: 346MB -> 337MB ( -9MB) link_crate time: 0.016; rss: 346MB -> 337MB ( -9MB) link {"message":"1 warning emitted","code":null,"level":"warning","spans":[],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: 1 warning emitted\u001b[0m\n\n"} time: 7.767; rss: 46MB -> 308MB ( +262MB) total