[INFO] fetching crate gb-io 0.6.0...
[INFO] checking gb-io-0.6.0 against beta-2021-10-15 for beta-1.56-3
[INFO] extracting crate gb-io 0.6.0 into /workspace/builds/worker-8/source
[INFO] validating manifest of crates.io crate gb-io 0.6.0 on toolchain beta-2021-10-15
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-10-15" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate gb-io 0.6.0
[INFO] finished tweaking crates.io crate gb-io 0.6.0
[INFO] tweaked toml for crates.io crate gb-io 0.6.0 written to /workspace/builds/worker-8/source/Cargo.toml
[INFO] crate crates.io crate gb-io 0.6.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-10-15" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded multimap v0.6.0
[INFO] [stderr]   Downloaded bio-types v0.5.1
[INFO] [stderr]   Downloaded bytecount v0.6.0
[INFO] [stderr]   Downloaded statrs v0.11.0
[INFO] [stderr]   Downloaded bio v0.30.0
[INFO] [stderr]   Downloaded bv v0.11.0
[INFO] [stderr]   Downloaded ndarray v0.13.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-10-15" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1ea7f2cdc3bf0e438b6de19c777e9151c2fe6bc2d24184bfcca08ac90e18854d
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "1ea7f2cdc3bf0e438b6de19c777e9151c2fe6bc2d24184bfcca08ac90e18854d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1ea7f2cdc3bf0e438b6de19c777e9151c2fe6bc2d24184bfcca08ac90e18854d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1ea7f2cdc3bf0e438b6de19c777e9151c2fe6bc2d24184bfcca08ac90e18854d", kill_on_drop: false }`
[INFO] [stdout] 1ea7f2cdc3bf0e438b6de19c777e9151c2fe6bc2d24184bfcca08ac90e18854d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-10-15" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5539c6465e93d1718b2956d09c60bdf118e629a7cc7da6202a6c4d617bff7b81
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "5539c6465e93d1718b2956d09c60bdf118e629a7cc7da6202a6c4d617bff7b81", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.16
[INFO] [stderr]    Compiling ppv-lite86 v0.2.6
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling siphasher v0.3.1
[INFO] [stderr]    Compiling semver v0.1.20
[INFO] [stderr]    Compiling rustversion v1.0.2
[INFO] [stderr]    Compiling doc-comment v0.3.2
[INFO] [stderr]    Compiling feature-probe v0.1.1
[INFO] [stderr]     Checking regex-syntax v0.6.16
[INFO] [stderr]    Compiling ndarray v0.13.0
[INFO] [stderr]    Compiling bio v0.30.0
[INFO] [stderr]     Checking ordermap v0.3.5
[INFO] [stderr]     Checking bit-vec v0.5.1
[INFO] [stderr]     Checking strum v0.16.0
[INFO] [stderr]     Checking custom_derive v0.1.7
[INFO] [stderr]     Checking bytecount v0.6.0
[INFO] [stderr]     Checking circular v0.3.0
[INFO] [stderr]     Checking bencher v0.1.5
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling proc-macro-error-attr v0.4.11
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling proc-macro-error v0.4.11
[INFO] [stderr]     Checking itertools v0.8.2
[INFO] [stderr]    Compiling nom v4.2.3
[INFO] [stderr]     Checking matrixmultiply v0.2.3
[INFO] [stderr]    Compiling phf_shared v0.8.0
[INFO] [stderr]    Compiling rustc_version v0.1.7
[INFO] [stderr]    Compiling libc v0.2.67
[INFO] [stderr]    Compiling c2-chacha v0.2.3
[INFO] [stderr]     Checking petgraph v0.4.13
[INFO] [stderr]     Checking bit-set v0.5.1
[INFO] [stderr]    Compiling bv v0.11.0
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]    Compiling newtype_derive v0.1.6
[INFO] [stderr]     Checking rand v0.6.5
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling rand_chacha v0.2.1
[INFO] [stderr]    Compiling rand_pcg v0.2.1
[INFO] [stderr]     Checking statrs v0.11.0
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]     Checking itertools-num v0.1.3
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]     Checking ordered-float v1.0.2
[INFO] [stderr]     Checking regex v1.3.4
[INFO] [stderr]    Compiling phf_generator v0.8.0
[INFO] [stderr]     Checking env_logger v0.7.1
[INFO] [stderr]    Compiling string_cache_codegen v0.5.1
[INFO] [stderr]    Compiling gb-io v0.6.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling snafu-derive v0.5.0
[INFO] [stderr]    Compiling syn-mid v0.5.0
[INFO] [stderr]    Compiling synstructure v0.12.3
[INFO] [stderr]    Compiling serde_derive v1.0.104
[INFO] [stderr]    Compiling strum_macros v0.16.0
[INFO] [stderr]    Compiling getset v0.0.9
[INFO] [stderr]     Checking snafu v0.5.0
[INFO] [stderr]    Compiling err-derive v0.2.3
[INFO] [stderr]     Checking serde v1.0.104
[INFO] [stderr]     Checking bstr v0.2.11
[INFO] [stderr]     Checking bio-types v0.5.1
[INFO] [stderr]     Checking vec_map v0.8.1
[INFO] [stderr]     Checking multimap v0.6.0
[INFO] [stderr]     Checking string_cache v0.8.0
[INFO] [stderr]     Checking serde_bytes v0.11.3
[INFO] [stderr]     Checking csv v1.1.3
[INFO] [stdout] error: couldn't read src/../tests/mg1655.gb: No such file or directory (os error 2)
[INFO] [stdout]   --> src/lib.rs:72:21
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let ecoli = include_bytes!("../tests/mg1655.gb");
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `include_bytes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read src/../tests/circ.gb: No such file or directory (os error 2)
[INFO] [stdout]   --> src/lib.rs:88:32
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let circ = parse_slice(include_bytes!("../tests/circ.gb")).unwrap();
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `include_bytes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read src/../tests/circ.gb: No such file or directory (os error 2)
[INFO] [stdout]   --> src/lib.rs:95:32
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let circ = parse_slice(include_bytes!("../tests/circ.gb")).unwrap().pop().unwrap();
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `include_bytes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: couldn't read src/../tests/biopython_tests/ls_orchid.gb: No such file or directory (os error 2)
[INFO] [stdout]    --> src/lib.rs:114:25
[INFO] [stdout]     |
[INFO] [stdout] 114 |             parse_slice(include_bytes!("../tests/biopython_tests/ls_orchid.gb")).unwrap();
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `include_bytes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |     map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                         ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:109:1
[INFO] [stdout]     |
[INFO] [stdout] 109 | named!(locus_name<&str>, to_str!(is_not!(": \t\r\n")));
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(semicolon_in_expressions_from_macros)]` on by default
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `map_res_custom_error`
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |     map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                         ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:113:1
[INFO] [stdout]     |
[INFO] [stdout] 113 | named!(molecule_type<&str>, to_str!(is_not!(" ")));
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `map_res_custom_error`
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:93:31
[INFO] [stdout]     |
[INFO] [stdout] 93  |           to_str!($i, call!($f));
[INFO] [stdout]     |                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:115:1
[INFO] [stdout]     |
[INFO] [stdout] 115 | / named!(
[INFO] [stdout] 116 | |     locus_full<Locus>,
[INFO] [stdout] 117 | |     sep!(
[INFO] [stdout] 118 | |         spaces,
[INFO] [stdout] ...   |
[INFO] [stdout] 136 | |     )
[INFO] [stdout] 137 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `to_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:115:1
[INFO] [stdout]     |
[INFO] [stdout] 115 | / named!(
[INFO] [stdout] 116 | |     locus_full<Locus>,
[INFO] [stdout] 117 | |     sep!(
[INFO] [stdout] 118 | |         spaces,
[INFO] [stdout] ...   |
[INFO] [stdout] 136 | |     )
[INFO] [stdout] 137 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:93:31
[INFO] [stdout]     |
[INFO] [stdout] 93  |           to_str!($i, call!($f));
[INFO] [stdout]     |                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | / named!(
[INFO] [stdout] 141 | |     locus_traditional<Locus>,
[INFO] [stdout] 142 | |     sep!(
[INFO] [stdout] 143 | |         spaces,
[INFO] [stdout] ...   |
[INFO] [stdout] 158 | |     )
[INFO] [stdout] 159 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `to_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | / named!(
[INFO] [stdout] 141 | |     locus_traditional<Locus>,
[INFO] [stdout] 142 | |     sep!(
[INFO] [stdout] 143 | |         spaces,
[INFO] [stdout] ...   |
[INFO] [stdout] 158 | |     )
[INFO] [stdout] 159 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:93:31
[INFO] [stdout]     |
[INFO] [stdout] 93  |           to_str!($i, call!($f));
[INFO] [stdout]     |                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:162:1
[INFO] [stdout]     |
[INFO] [stdout] 162 | / named!(
[INFO] [stdout] 163 | |     locus_tag_only<Locus>,
[INFO] [stdout] 164 | |     do_parse!(
[INFO] [stdout] 165 | |         stuff: opt!(to_str!(not_line_ending))
[INFO] [stdout] ...   |
[INFO] [stdout] 177 | |     )
[INFO] [stdout] 178 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `to_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:162:1
[INFO] [stdout]     |
[INFO] [stdout] 162 | / named!(
[INFO] [stdout] 163 | |     locus_tag_only<Locus>,
[INFO] [stdout] 164 | |     do_parse!(
[INFO] [stdout] 165 | |         stuff: opt!(to_str!(not_line_ending))
[INFO] [stdout] ...   |
[INFO] [stdout] 177 | |     )
[INFO] [stdout] 178 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:93:31
[INFO] [stdout]     |
[INFO] [stdout] 93  |           to_str!($i, call!($f));
[INFO] [stdout]     |                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:182:1
[INFO] [stdout]     |
[INFO] [stdout] 182 | / named!(pub skip_preamble<()>,
[INFO] [stdout] 183 | |     fold_many0!(
[INFO] [stdout] 184 | |         do_parse!(
[INFO] [stdout] 185 | |             not!(tag!("LOCUS")) >>
[INFO] [stdout] ...   |
[INFO] [stdout] 191 | |     )
[INFO] [stdout] 192 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `to_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:182:1
[INFO] [stdout]     |
[INFO] [stdout] 182 | / named!(pub skip_preamble<()>,
[INFO] [stdout] 183 | |     fold_many0!(
[INFO] [stdout] 184 | |         do_parse!(
[INFO] [stdout] 185 | |             not!(tag!("LOCUS")) >>
[INFO] [stdout] ...   |
[INFO] [stdout] 191 | |     )
[INFO] [stdout] 192 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:205:1
[INFO] [stdout]     |
[INFO] [stdout] 205 | / named_args!(field<'a>(indent: usize, name: &str, keep_ws: bool) <String>,
[INFO] [stdout] 206 | |     to_string!(apply!(field_bytes, indent, name, keep_ws))
[INFO] [stdout] 207 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `map_res_custom_error`
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:93:31
[INFO] [stdout]     |
[INFO] [stdout] 93  |           to_str!($i, call!($f));
[INFO] [stdout]     |                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:377:1
[INFO] [stdout]     |
[INFO] [stdout] 377 | / named!(
[INFO] [stdout] 378 | |     ignored_line<&str>,
[INFO] [stdout] 379 | |     do_parse!(
[INFO] [stdout] 380 | |         not!(alt!(tag!("ORIGIN") | tag!("CONTIG") | tag!("FEATURES"))) >> // TODO: fix this
[INFO] [stdout] 381 | |         content: to_str!(not_line_ending) >> line_ending >> (content)
[INFO] [stdout] 382 | |     )
[INFO] [stdout] 383 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `to_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:377:1
[INFO] [stdout]     |
[INFO] [stdout] 377 | / named!(
[INFO] [stdout] 378 | |     ignored_line<&str>,
[INFO] [stdout] 379 | |     do_parse!(
[INFO] [stdout] 380 | |         not!(alt!(tag!("ORIGIN") | tag!("CONTIG") | tag!("FEATURES"))) >> // TODO: fix this
[INFO] [stdout] 381 | |         content: to_str!(not_line_ending) >> line_ending >> (content)
[INFO] [stdout] 382 | |     )
[INFO] [stdout] 383 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |     map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                         ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:436:22
[INFO] [stdout]     |
[INFO] [stdout] 436 |     let (i, mut s) = to_string!(i, apply!(qualifier_value_bare_bytes, indent))?;
[INFO] [stdout]     |                      --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |     map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                         ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:497:22
[INFO] [stdout]     |
[INFO] [stdout] 497 |     let (_, mut s) = to_string!(input, value!(res))?;
[INFO] [stdout]     |                      ------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] {"reason":"compiler-message","package_id":"gb-io 0.6.0 (path+file:///opt/rustwide/workdir)","manifest_path":"/opt/rustwide/workdir/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"gb-io","src_path":"/opt/rustwide/workdir/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"message":{"message":"trailing semicolon in macro used in expression position","code":{"code":"semicolon_in_expressions_from_macros","explanation":null},"level":"warning","spans":[{"file_name":"src/reader/errors.rs","byte_start":2262,"byte_end":2263,"line_start":72,"line_end":72,"column_start":73,"column_end":74,"is_primary":true,"text":[{"text":"    map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));","highlight_start":73,"highlight_end":74}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/errors.rs","byte_start":2792,"byte_end":2943,"line_start":87,"line_end":90,"column_start":9,"column_end":10,"is_primary":false,"text":[{"text":"        map_res_custom_error!($i, NomParserError::Utf8Error,","highlight_start":9,"highlight_end":61},{"text":"                      $submac!($($args)*),","highlight_start":1,"highlight_end":43},{"text":"                               str::from_utf8","highlight_start":1,"highlight_end":46},{"text":"        )","highlight_start":1,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/macros.rs","byte_start":22544,"byte_end":22567,"line_start":657,"line_end":657,"column_start":8,"column_end":31,"is_primary":false,"text":[{"text":"      ($submac!($i, $($args)*)).map(|(i,o)| {","highlight_start":8,"highlight_end":31}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/macros.rs","byte_start":22692,"byte_end":22732,"line_start":663,"line_end":663,"column_start":5,"column_end":45,"is_primary":false,"text":[{"text":"    map!(__impl $i, $submac!($($args)*), $g);","highlight_start":5,"highlight_end":45}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15421,"byte_end":15449,"line_start":530,"line_end":530,"column_start":9,"column_end":37,"is_primary":false,"text":[{"text":"        alt!($i, $macro!($($args)*))","highlight_start":9,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/macros.rs","byte_start":3462,"byte_end":3484,"line_start":119,"line_end":119,"column_start":13,"column_end":35,"is_primary":false,"text":[{"text":"            $submac!(i, $($args)*)","highlight_start":13,"highlight_end":35}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15460,"byte_end":16007,"line_start":534,"line_end":556,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"named!(","highlight_start":1,"highlight_end":8},{"text":"    qualifier_key<QualifierKey>,","highlight_start":1,"highlight_end":33},{"text":"    match_tags!(qualifier_key!,","highlight_start":1,"highlight_end":32},{"text":"      one_of!(\"=\\r\\n\"),","highlight_start":1,"highlight_end":24},{"text":"      \"db_xref\"       |","highlight_start":1,"highlight_end":24},{"text":"      \"note\"          |","highlight_start":1,"highlight_end":24},{"text":"      \"gene_synonym\"  |","highlight_start":1,"highlight_end":24},{"text":"      \"gene\"          |","highlight_start":1,"highlight_end":24},{"text":"      \"product\"       |","highlight_start":1,"highlight_end":24},{"text":"      \"transcript_id\" |","highlight_start":1,"highlight_end":24},{"text":"      \"codon_start\"   |","highlight_start":1,"highlight_end":24},{"text":"      \"translation\"   |","highlight_start":1,"highlight_end":24},{"text":"      \"protein_id\"    |","highlight_start":1,"highlight_end":24},{"text":"      \"ncRNA_class\"   |","highlight_start":1,"highlight_end":24},{"text":"      \"pseudo\"        |","highlight_start":1,"highlight_end":24},{"text":"      \"exception\"     |","highlight_start":1,"highlight_end":24},{"text":"      \"inference\"     |","highlight_start":1,"highlight_end":24},{"text":"      \"locus_tag\"     |","highlight_start":1,"highlight_end":24},{"text":"      \"transl_table\"  |","highlight_start":1,"highlight_end":24},{"text":"      \"function\"      |","highlight_start":1,"highlight_end":24},{"text":"      map!(to_str!(is_not!(\"=\\r\\n\")), QualifierKey::from)","highlight_start":1,"highlight_end":58},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null},"macro_decl_name":"named!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/macros.rs","byte_start":2688,"byte_end":5822,"line_start":98,"line_end":182,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! named (","highlight_start":1,"highlight_end":21},{"text":"    (#$($args:tt)*) => (","highlight_start":1,"highlight_end":25},{"text":"        named_attr!(#$($args)*);","highlight_start":1,"highlight_end":33},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($name:ident( $i:ty ) -> $o:ty, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":73},{"text":"        fn $name( i: $i ) -> $crate::IResult<$i,$o,u32> {","highlight_start":1,"highlight_end":58},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($name:ident<$i:ty,$o:ty,$e:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":74},{"text":"        fn $name( i: $i ) -> $crate::IResult<$i, $o, $e> {","highlight_start":1,"highlight_end":59},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($name:ident<$i:ty,$o:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":68},{"text":"        fn $name( i: $i ) -> $crate::IResult<$i, $o, u32> {","highlight_start":1,"highlight_end":60},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($name:ident<$o:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":62},{"text":"        fn $name( i: &[u8] ) -> $crate::IResult<&[u8], $o, u32> {","highlight_start":1,"highlight_end":66},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($name:ident, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":55},{"text":"        fn $name( i: &[u8] ) -> $crate::IResult<&[u8], &[u8], u32> {","highlight_start":1,"highlight_end":69},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub $name:ident( $i:ty ) -> $o:ty, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":77},{"text":"        pub fn $name( i: $i ) -> $crate::IResult<$i,$o, u32> {","highlight_start":1,"highlight_end":63},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub $name:ident<$i:ty,$o:ty,$e:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":78},{"text":"        pub fn $name( i: $i ) -> $crate::IResult<$i, $o, $e> {","highlight_start":1,"highlight_end":63},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub $name:ident<$i:ty,$o:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":72},{"text":"        pub fn $name( i: $i ) -> $crate::IResult<$i, $o, u32> {","highlight_start":1,"highlight_end":64},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub $name:ident<$o:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":66},{"text":"        pub fn $name( i: &[u8] ) -> $crate::IResult<&[u8], $o, u32> {","highlight_start":1,"highlight_end":70},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub $name:ident, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":59},{"text":"        pub fn $name( i: &[u8] ) -> $crate::IResult<&[u8], &[u8], u32> {","highlight_start":1,"highlight_end":73},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub(crate) $name:ident( $i:ty ) -> $o:ty, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":84},{"text":"        #[allow(unused_variables)]","highlight_start":1,"highlight_end":35},{"text":"        pub(crate) fn $name( i: $i ) -> $crate::IResult<$i,$o, u32> {","highlight_start":1,"highlight_end":70},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub(crate) $name:ident<$i:ty,$o:ty,$e:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":85},{"text":"        #[allow(unused_variables)]","highlight_start":1,"highlight_end":35},{"text":"        pub(crate) fn $name( i: $i ) -> $crate::IResult<$i, $o, $e> {","highlight_start":1,"highlight_end":70},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub(crate) $name:ident<$i:ty,$o:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":79},{"text":"        #[allow(unused_variables)]","highlight_start":1,"highlight_end":35},{"text":"        pub(crate) fn $name( i: $i ) -> $crate::IResult<$i, $o, u32> {","highlight_start":1,"highlight_end":71},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub(crate) $name:ident<$o:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":73},{"text":"        #[allow(unused_variables)]","highlight_start":1,"highlight_end":35},{"text":"        pub(crate) fn $name( i: &[u8] ) -> $crate::IResult<&[u8], $o, u32> {","highlight_start":1,"highlight_end":77},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub(crate) $name:ident, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":66},{"text":"        #[allow(unused_variables)]","highlight_start":1,"highlight_end":35},{"text":"        pub(crate) fn $name<'a>( i: &'a [u8] ) -> $crate::IResult<&[u8], &[u8], u32> {","highlight_start":1,"highlight_end":87},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":1},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":1},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":1},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":1},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":1},{"text":"      )","highlight_start":1,"highlight_end":1},{"text":"    \");","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":1},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":1},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":1},{"text":"    {","highlight_start":1,"highlight_end":1},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":1},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":1},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":1},{"text":"      match res {","highlight_start":1,"highlight_end":1},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":1},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":1},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":1},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":1},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":1},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":1},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":1},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":1},{"text":"          }","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":1},{"text":"        },","highlight_start":1,"highlight_end":1},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":1},{"text":"      }","highlight_start":1,"highlight_end":1},{"text":"    }","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":1},{"text":"    {","highlight_start":1,"highlight_end":1},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":1},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":1},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":1},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":1},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":1},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":1},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":1},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":1},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":1},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":1},{"text":"          }","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":1},{"text":"        },","highlight_start":1,"highlight_end":1},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":1},{"text":"      }","highlight_start":1,"highlight_end":1},{"text":"    }","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":1},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":1},{"text":"    {","highlight_start":1,"highlight_end":1},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":1},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":1},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":1},{"text":"    }","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":1},{"text":"    {","highlight_start":1,"highlight_end":1},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":1},{"text":"    }","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"map!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/macros.rs","byte_start":22321,"byte_end":22817,"line_start":649,"line_end":668,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! map(","highlight_start":1,"highlight_end":18},{"text":"  // Internal parser, do not use directly","highlight_start":1,"highlight_end":42},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $g:expr) => (","highlight_start":1,"highlight_end":65},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      pub fn _unify<T, R, F: FnOnce(T) -> R>(f: F, t: T) -> R {","highlight_start":1,"highlight_end":64},{"text":"       f(t)","highlight_start":1,"highlight_end":12},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      ($submac!($i, $($args)*)).map(|(i,o)| {","highlight_start":1,"highlight_end":46},{"text":"        (i, _unify($g, o))","highlight_start":1,"highlight_end":27},{"text":"      })","highlight_start":1,"highlight_end":9},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $submac:ident!( $($args:tt)* ), $g:expr) => (","highlight_start":1,"highlight_end":58},{"text":"    map!(__impl $i, $submac!($($args)*), $g);","highlight_start":1,"highlight_end":46},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $f:expr, $g:expr) => (","highlight_start":1,"highlight_end":35},{"text":"    map!(__impl $i, call!($f), $g);","highlight_start":1,"highlight_end":36},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"map!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/macros.rs","byte_start":22321,"byte_end":22817,"line_start":649,"line_end":668,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! map(","highlight_start":1,"highlight_end":18},{"text":"  // Internal parser, do not use directly","highlight_start":1,"highlight_end":42},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $g:expr) => (","highlight_start":1,"highlight_end":65},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      pub fn _unify<T, R, F: FnOnce(T) -> R>(f: F, t: T) -> R {","highlight_start":1,"highlight_end":64},{"text":"       f(t)","highlight_start":1,"highlight_end":12},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      ($submac!($i, $($args)*)).map(|(i,o)| {","highlight_start":1,"highlight_end":46},{"text":"        (i, _unify($g, o))","highlight_start":1,"highlight_end":27},{"text":"      })","highlight_start":1,"highlight_end":9},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $submac:ident!( $($args:tt)* ), $g:expr) => (","highlight_start":1,"highlight_end":58},{"text":"    map!(__impl $i, $submac!($($args)*), $g);","highlight_start":1,"highlight_end":46},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $f:expr, $g:expr) => (","highlight_start":1,"highlight_end":35},{"text":"    map!(__impl $i, call!($f), $g);","highlight_start":1,"highlight_end":36},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"to_str!","def_site_span":{"file_name":"src/reader/errors.rs","byte_start":2711,"byte_end":3020,"line_start":85,"line_end":95,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! to_str (","highlight_start":1,"highlight_end":22},{"text":"    ($i:expr, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":51},{"text":"        map_res_custom_error!($i, NomParserError::Utf8Error,","highlight_start":1,"highlight_end":61},{"text":"                      $submac!($($args)*),","highlight_start":1,"highlight_end":43},{"text":"                               str::from_utf8","highlight_start":1,"highlight_end":46},{"text":"        )","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $f:expr) => (","highlight_start":1,"highlight_end":28},{"text":"        to_str!($i, call!($f));","highlight_start":1,"highlight_end":32},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"map_res_custom_error!","def_site_span":{"file_name":"src/reader/errors.rs","byte_start":1543,"byte_end":2709,"line_start":52,"line_end":83,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! map_res_custom_error (","highlight_start":1,"highlight_end":36},{"text":"  // Internal parser, do not use directly","highlight_start":1,"highlight_end":42},{"text":"  (__impl $i:expr, $e:expr, $submac:ident!( $($args:tt)* ), $submac2:ident!( $($args2:tt)* )) => (","highlight_start":1,"highlight_end":99},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use ::std::result::Result::*;","highlight_start":1,"highlight_end":36},{"text":"      use ::nom::Err;","highlight_start":1,"highlight_end":22},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      ($submac!(i_, $($args)*)).and_then(|(i,o)| {","highlight_start":1,"highlight_end":51},{"text":"        match $submac2!(o, $($args2)*) {","highlight_start":1,"highlight_end":41},{"text":"          Ok(output) => Ok((i, output)),","highlight_start":1,"highlight_end":41},{"text":"          Err(_) => {","highlight_start":1,"highlight_end":22},{"text":"            let e = ::nom::ErrorKind::Custom(u32::from($e));","highlight_start":1,"highlight_end":61},{"text":"            Err(Err::Error(error_position!($i, e)))","highlight_start":1,"highlight_end":52},{"text":"          },","highlight_start":1,"highlight_end":13},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"      })","highlight_start":1,"highlight_end":9},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $e:expr, $submac:ident!( $($args:tt)* ), $g:expr) => (","highlight_start":1,"highlight_end":67},{"text":"    map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));","highlight_start":1,"highlight_end":74},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $e:expr, $submac:ident!( $($args:tt)* ), $submac2:ident!( $($args2:tt)* )) => (","highlight_start":1,"highlight_end":92},{"text":"    map_res_custom_error!(__impl $i, $e, $submac!($($args)*), $submac2!($($args2)*));","highlight_start":1,"highlight_end":86},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $e:expr, $f:expr, $g:expr) => (","highlight_start":1,"highlight_end":44},{"text":"    map_res_custom_error!(__impl $i, $e, call!($f), call!($g));","highlight_start":1,"highlight_end":64},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $e:expr, $f:expr, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":67},{"text":"    map_res_custom_error!(__impl $i, call!($f), $submac!($($args)*));","highlight_start":1,"highlight_end":70},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}}],"children":[{"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":"for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: trailing semicolon in macro used in expression position\u001b[0m\n\u001b[0m   \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0msrc/reader/errors.rs:72:73\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;12m72\u001b[0m\u001b[0m  \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m  \u001b[0m\u001b[0m    map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));\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\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/reader/nom_parsers.rs:534: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;12m534\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[0mnamed!(\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m535\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    qualifier_key<QualifierKey>,\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m536\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    match_tags!(qualifier_key!,\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m537\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      one_of!(\"=\\r\\n\"),\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;12m555\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;12m556\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[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: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>\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 `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)\u001b[0m\n\n"}}
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:593:1
[INFO] [stdout]     |
[INFO] [stdout] 593 | / named!(
[INFO] [stdout] 594 | |     feature_kind<FeatureKind>,
[INFO] [stdout] 595 | |     match_tags!(
[INFO] [stdout] 596 | |            feature_kind!,
[INFO] [stdout] ...   |
[INFO] [stdout] 600 | |       )
[INFO] [stdout] 601 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:688:1
[INFO] [stdout]     |
[INFO] [stdout] 688 | / named!(
[INFO] [stdout] 689 | |     pos_external<CompleteByteSlice, Location>,
[INFO] [stdout] 690 | |     do_parse!(
[INFO] [stdout] 691 | |         accession: to_str!(map!(is_not!(": \t\r\n"), |x| x.0)) // convert to &[u8]
[INFO] [stdout] ...   |
[INFO] [stdout] 702 | |     )
[INFO] [stdout] 703 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:734:1
[INFO] [stdout]     |
[INFO] [stdout] 734 | / named!(
[INFO] [stdout] 735 | |     pub contig_text<Location>,
[INFO] [stdout] 736 | |     map_res_custom_error!(
[INFO] [stdout] 737 | |         NomParserError::Location,
[INFO] [stdout] ...   |
[INFO] [stdout] 744 | |     )
[INFO] [stdout] 745 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `map_res_custom_error`
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:776:1
[INFO] [stdout]     |
[INFO] [stdout] 776 | / named_args!(sequence(len: Option<usize>) <Vec<u8>>,
[INFO] [stdout] 777 | |     map_res_custom_error!(
[INFO] [stdout] 778 | |         NomParserError::SequenceLength,
[INFO] [stdout] 779 | |         fold_many0!(sequence_chunk,
[INFO] [stdout] ...   |
[INFO] [stdout] 802 | |     )
[INFO] [stdout] 803 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `map_res_custom_error`
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |     map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                         ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:109:1
[INFO] [stdout]     |
[INFO] [stdout] 109 | named!(locus_name<&str>, to_str!(is_not!(": \t\r\n")));
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(semicolon_in_expressions_from_macros)]` on by default
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `map_res_custom_error`
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |     map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                         ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:113:1
[INFO] [stdout]     |
[INFO] [stdout] 113 | named!(molecule_type<&str>, to_str!(is_not!(" ")));
[INFO] [stdout]     | --------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `map_res_custom_error`
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:93:31
[INFO] [stdout]     |
[INFO] [stdout] 93  |           to_str!($i, call!($f));
[INFO] [stdout]     |                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:115:1
[INFO] [stdout]     |
[INFO] [stdout] 115 | / named!(
[INFO] [stdout] 116 | |     locus_full<Locus>,
[INFO] [stdout] 117 | |     sep!(
[INFO] [stdout] 118 | |         spaces,
[INFO] [stdout] ...   |
[INFO] [stdout] 136 | |     )
[INFO] [stdout] 137 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `to_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:115:1
[INFO] [stdout]     |
[INFO] [stdout] 115 | / named!(
[INFO] [stdout] 116 | |     locus_full<Locus>,
[INFO] [stdout] 117 | |     sep!(
[INFO] [stdout] 118 | |         spaces,
[INFO] [stdout] ...   |
[INFO] [stdout] 136 | |     )
[INFO] [stdout] 137 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:93:31
[INFO] [stdout]     |
[INFO] [stdout] 93  |           to_str!($i, call!($f));
[INFO] [stdout]     |                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | / named!(
[INFO] [stdout] 141 | |     locus_traditional<Locus>,
[INFO] [stdout] 142 | |     sep!(
[INFO] [stdout] 143 | |         spaces,
[INFO] [stdout] ...   |
[INFO] [stdout] 158 | |     )
[INFO] [stdout] 159 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `to_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | / named!(
[INFO] [stdout] 141 | |     locus_traditional<Locus>,
[INFO] [stdout] 142 | |     sep!(
[INFO] [stdout] 143 | |         spaces,
[INFO] [stdout] ...   |
[INFO] [stdout] 158 | |     )
[INFO] [stdout] 159 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:93:31
[INFO] [stdout]     |
[INFO] [stdout] 93  |           to_str!($i, call!($f));
[INFO] [stdout]     |                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:162:1
[INFO] [stdout]     |
[INFO] [stdout] 162 | / named!(
[INFO] [stdout] 163 | |     locus_tag_only<Locus>,
[INFO] [stdout] 164 | |     do_parse!(
[INFO] [stdout] 165 | |         stuff: opt!(to_str!(not_line_ending))
[INFO] [stdout] ...   |
[INFO] [stdout] 177 | |     )
[INFO] [stdout] 178 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `to_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:162:1
[INFO] [stdout]     |
[INFO] [stdout] 162 | / named!(
[INFO] [stdout] 163 | |     locus_tag_only<Locus>,
[INFO] [stdout] 164 | |     do_parse!(
[INFO] [stdout] 165 | |         stuff: opt!(to_str!(not_line_ending))
[INFO] [stdout] ...   |
[INFO] [stdout] 177 | |     )
[INFO] [stdout] 178 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:93:31
[INFO] [stdout]     |
[INFO] [stdout] 93  |           to_str!($i, call!($f));
[INFO] [stdout]     |                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:182:1
[INFO] [stdout]     |
[INFO] [stdout] 182 | / named!(pub skip_preamble<()>,
[INFO] [stdout] 183 | |     fold_many0!(
[INFO] [stdout] 184 | |         do_parse!(
[INFO] [stdout] 185 | |             not!(tag!("LOCUS")) >>
[INFO] [stdout] ...   |
[INFO] [stdout] 191 | |     )
[INFO] [stdout] 192 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `to_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:182:1
[INFO] [stdout]     |
[INFO] [stdout] 182 | / named!(pub skip_preamble<()>,
[INFO] [stdout] 183 | |     fold_many0!(
[INFO] [stdout] 184 | |         do_parse!(
[INFO] [stdout] 185 | |             not!(tag!("LOCUS")) >>
[INFO] [stdout] ...   |
[INFO] [stdout] 191 | |     )
[INFO] [stdout] 192 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:205:1
[INFO] [stdout]     |
[INFO] [stdout] 205 | / named_args!(field<'a>(indent: usize, name: &str, keep_ws: bool) <String>,
[INFO] [stdout] 206 | |     to_string!(apply!(field_bytes, indent, name, keep_ws))
[INFO] [stdout] 207 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `map_res_custom_error`
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:93:31
[INFO] [stdout]     |
[INFO] [stdout] 93  |           to_str!($i, call!($f));
[INFO] [stdout]     |                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:377:1
[INFO] [stdout]     |
[INFO] [stdout] 377 | / named!(
[INFO] [stdout] 378 | |     ignored_line<&str>,
[INFO] [stdout] 379 | |     do_parse!(
[INFO] [stdout] 380 | |         not!(alt!(tag!("ORIGIN") | tag!("CONTIG") | tag!("FEATURES"))) >> // TODO: fix this
[INFO] [stdout] 381 | |         content: to_str!(not_line_ending) >> line_ending >> (content)
[INFO] [stdout] 382 | |     )
[INFO] [stdout] 383 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `to_str` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:377:1
[INFO] [stdout]     |
[INFO] [stdout] 377 | / named!(
[INFO] [stdout] 378 | |     ignored_line<&str>,
[INFO] [stdout] 379 | |     do_parse!(
[INFO] [stdout] 380 | |         not!(alt!(tag!("ORIGIN") | tag!("CONTIG") | tag!("FEATURES"))) >> // TODO: fix this
[INFO] [stdout] 381 | |         content: to_str!(not_line_ending) >> line_ending >> (content)
[INFO] [stdout] 382 | |     )
[INFO] [stdout] 383 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |     map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                         ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:436:22
[INFO] [stdout]     |
[INFO] [stdout] 436 |     let (i, mut s) = to_string!(i, apply!(qualifier_value_bare_bytes, indent))?;
[INFO] [stdout]     |                      --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |     map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                         ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:497:22
[INFO] [stdout]     |
[INFO] [stdout] 497 |     let (_, mut s) = to_string!(input, value!(res))?;
[INFO] [stdout]     |                      ------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] {"reason":"compiler-message","package_id":"gb-io 0.6.0 (path+file:///opt/rustwide/workdir)","manifest_path":"/opt/rustwide/workdir/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"gb-io","src_path":"/opt/rustwide/workdir/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"message":{"message":"trailing semicolon in macro used in expression position","code":{"code":"semicolon_in_expressions_from_macros","explanation":null},"level":"warning","spans":[{"file_name":"src/reader/errors.rs","byte_start":2262,"byte_end":2263,"line_start":72,"line_end":72,"column_start":73,"column_end":74,"is_primary":true,"text":[{"text":"    map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));","highlight_start":73,"highlight_end":74}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/errors.rs","byte_start":2792,"byte_end":2943,"line_start":87,"line_end":90,"column_start":9,"column_end":10,"is_primary":false,"text":[{"text":"        map_res_custom_error!($i, NomParserError::Utf8Error,","highlight_start":9,"highlight_end":61},{"text":"                      $submac!($($args)*),","highlight_start":1,"highlight_end":43},{"text":"                               str::from_utf8","highlight_start":1,"highlight_end":46},{"text":"        )","highlight_start":1,"highlight_end":10}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/macros.rs","byte_start":22544,"byte_end":22567,"line_start":657,"line_end":657,"column_start":8,"column_end":31,"is_primary":false,"text":[{"text":"      ($submac!($i, $($args)*)).map(|(i,o)| {","highlight_start":8,"highlight_end":31}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/macros.rs","byte_start":22692,"byte_end":22732,"line_start":663,"line_end":663,"column_start":5,"column_end":45,"is_primary":false,"text":[{"text":"    map!(__impl $i, $submac!($($args)*), $g);","highlight_start":5,"highlight_end":45}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15421,"byte_end":15449,"line_start":530,"line_end":530,"column_start":9,"column_end":37,"is_primary":false,"text":[{"text":"        alt!($i, $macro!($($args)*))","highlight_start":9,"highlight_end":37}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6822,"byte_end":6846,"line_start":193,"line_end":193,"column_start":17,"column_end":41,"is_primary":false,"text":[{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":17,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":7679,"byte_end":7705,"line_start":223,"line_end":223,"column_start":21,"column_end":47,"is_primary":false,"text":[{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":21,"highlight_end":47}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":8404,"byte_end":8438,"line_start":255,"line_end":255,"column_start":7,"column_end":41,"is_primary":false,"text":[{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":7,"highlight_end":41}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15148,"byte_end":15310,"line_start":526,"line_end":527,"column_start":9,"column_end":94,"is_primary":false,"text":[{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":9,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/macros.rs","byte_start":3462,"byte_end":3484,"line_start":119,"line_end":119,"column_start":13,"column_end":35,"is_primary":false,"text":[{"text":"            $submac!(i, $($args)*)","highlight_start":13,"highlight_end":35}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":{"span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15460,"byte_end":16007,"line_start":534,"line_end":556,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"named!(","highlight_start":1,"highlight_end":8},{"text":"    qualifier_key<QualifierKey>,","highlight_start":1,"highlight_end":33},{"text":"    match_tags!(qualifier_key!,","highlight_start":1,"highlight_end":32},{"text":"      one_of!(\"=\\r\\n\"),","highlight_start":1,"highlight_end":24},{"text":"      \"db_xref\"       |","highlight_start":1,"highlight_end":24},{"text":"      \"note\"          |","highlight_start":1,"highlight_end":24},{"text":"      \"gene_synonym\"  |","highlight_start":1,"highlight_end":24},{"text":"      \"gene\"          |","highlight_start":1,"highlight_end":24},{"text":"      \"product\"       |","highlight_start":1,"highlight_end":24},{"text":"      \"transcript_id\" |","highlight_start":1,"highlight_end":24},{"text":"      \"codon_start\"   |","highlight_start":1,"highlight_end":24},{"text":"      \"translation\"   |","highlight_start":1,"highlight_end":24},{"text":"      \"protein_id\"    |","highlight_start":1,"highlight_end":24},{"text":"      \"ncRNA_class\"   |","highlight_start":1,"highlight_end":24},{"text":"      \"pseudo\"        |","highlight_start":1,"highlight_end":24},{"text":"      \"exception\"     |","highlight_start":1,"highlight_end":24},{"text":"      \"inference\"     |","highlight_start":1,"highlight_end":24},{"text":"      \"locus_tag\"     |","highlight_start":1,"highlight_end":24},{"text":"      \"transl_table\"  |","highlight_start":1,"highlight_end":24},{"text":"      \"function\"      |","highlight_start":1,"highlight_end":24},{"text":"      map!(to_str!(is_not!(\"=\\r\\n\")), QualifierKey::from)","highlight_start":1,"highlight_end":58},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null},"macro_decl_name":"named!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/macros.rs","byte_start":2688,"byte_end":5822,"line_start":98,"line_end":182,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! named (","highlight_start":1,"highlight_end":21},{"text":"    (#$($args:tt)*) => (","highlight_start":1,"highlight_end":25},{"text":"        named_attr!(#$($args)*);","highlight_start":1,"highlight_end":33},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($name:ident( $i:ty ) -> $o:ty, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":73},{"text":"        fn $name( i: $i ) -> $crate::IResult<$i,$o,u32> {","highlight_start":1,"highlight_end":58},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($name:ident<$i:ty,$o:ty,$e:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":74},{"text":"        fn $name( i: $i ) -> $crate::IResult<$i, $o, $e> {","highlight_start":1,"highlight_end":59},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($name:ident<$i:ty,$o:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":68},{"text":"        fn $name( i: $i ) -> $crate::IResult<$i, $o, u32> {","highlight_start":1,"highlight_end":60},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($name:ident<$o:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":62},{"text":"        fn $name( i: &[u8] ) -> $crate::IResult<&[u8], $o, u32> {","highlight_start":1,"highlight_end":66},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($name:ident, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":55},{"text":"        fn $name( i: &[u8] ) -> $crate::IResult<&[u8], &[u8], u32> {","highlight_start":1,"highlight_end":69},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub $name:ident( $i:ty ) -> $o:ty, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":77},{"text":"        pub fn $name( i: $i ) -> $crate::IResult<$i,$o, u32> {","highlight_start":1,"highlight_end":63},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub $name:ident<$i:ty,$o:ty,$e:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":78},{"text":"        pub fn $name( i: $i ) -> $crate::IResult<$i, $o, $e> {","highlight_start":1,"highlight_end":63},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub $name:ident<$i:ty,$o:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":72},{"text":"        pub fn $name( i: $i ) -> $crate::IResult<$i, $o, u32> {","highlight_start":1,"highlight_end":64},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub $name:ident<$o:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":66},{"text":"        pub fn $name( i: &[u8] ) -> $crate::IResult<&[u8], $o, u32> {","highlight_start":1,"highlight_end":70},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub $name:ident, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":59},{"text":"        pub fn $name( i: &[u8] ) -> $crate::IResult<&[u8], &[u8], u32> {","highlight_start":1,"highlight_end":73},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub(crate) $name:ident( $i:ty ) -> $o:ty, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":84},{"text":"        #[allow(unused_variables)]","highlight_start":1,"highlight_end":35},{"text":"        pub(crate) fn $name( i: $i ) -> $crate::IResult<$i,$o, u32> {","highlight_start":1,"highlight_end":70},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub(crate) $name:ident<$i:ty,$o:ty,$e:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":85},{"text":"        #[allow(unused_variables)]","highlight_start":1,"highlight_end":35},{"text":"        pub(crate) fn $name( i: $i ) -> $crate::IResult<$i, $o, $e> {","highlight_start":1,"highlight_end":70},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub(crate) $name:ident<$i:ty,$o:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":79},{"text":"        #[allow(unused_variables)]","highlight_start":1,"highlight_end":35},{"text":"        pub(crate) fn $name( i: $i ) -> $crate::IResult<$i, $o, u32> {","highlight_start":1,"highlight_end":71},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub(crate) $name:ident<$o:ty>, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":73},{"text":"        #[allow(unused_variables)]","highlight_start":1,"highlight_end":35},{"text":"        pub(crate) fn $name( i: &[u8] ) -> $crate::IResult<&[u8], $o, u32> {","highlight_start":1,"highlight_end":77},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    (pub(crate) $name:ident, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":66},{"text":"        #[allow(unused_variables)]","highlight_start":1,"highlight_end":35},{"text":"        pub(crate) fn $name<'a>( i: &'a [u8] ) -> $crate::IResult<&[u8], &[u8], u32> {","highlight_start":1,"highlight_end":87},{"text":"            $submac!(i, $($args)*)","highlight_start":1,"highlight_end":35},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":1},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":1},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":1},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":1},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":1},{"text":"      )","highlight_start":1,"highlight_end":1},{"text":"    \");","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":1},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":1},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":1},{"text":"    {","highlight_start":1,"highlight_end":1},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":1},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":1},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":1},{"text":"      match res {","highlight_start":1,"highlight_end":1},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":1},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":1},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":1},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":1},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":1},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":1},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":1},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":1},{"text":"          }","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":1},{"text":"        },","highlight_start":1,"highlight_end":1},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":1},{"text":"      }","highlight_start":1,"highlight_end":1},{"text":"    }","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":1},{"text":"    {","highlight_start":1,"highlight_end":1},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":1},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":1},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":1},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":1},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":1},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":1},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":1},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":1},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":1},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":1},{"text":"          }","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":1},{"text":"        },","highlight_start":1,"highlight_end":1},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":1},{"text":"      }","highlight_start":1,"highlight_end":1},{"text":"    }","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":1},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":1},{"text":"    {","highlight_start":1,"highlight_end":1},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":1},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":1},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":1},{"text":"    }","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":1},{"text":"    {","highlight_start":1,"highlight_end":1},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":1},{"text":"    }","highlight_start":1,"highlight_end":1},{"text":"  );","highlight_start":1,"highlight_end":1},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"match_tags!","def_site_span":{"file_name":"src/reader/nom_parsers.rs","byte_start":15022,"byte_end":15458,"line_start":524,"line_end":532,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! match_tags (","highlight_start":1,"highlight_end":26},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $first:tt | $($rest:tt)*) => (","highlight_start":1,"highlight_end":92},{"text":"        alt!($i, terminated!(tag!($first), peek!($term!($($term_args)*))) =>","highlight_start":1,"highlight_end":77},{"text":"             { |_| $atom!($first) } | match_tags!($atom!, $term!($($term_args)*), $($rest)*))","highlight_start":1,"highlight_end":94},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $atom:ident!, $term:ident!($($term_args:tt)*), $macro:ident!($($args:tt)*)) => (","highlight_start":1,"highlight_end":95},{"text":"        alt!($i, $macro!($($args)*))","highlight_start":1,"highlight_end":37},{"text":"    )","highlight_start":1,"highlight_end":6},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"alt!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/branch.rs","byte_start":6183,"byte_end":8452,"line_start":169,"line_end":258,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! alt (","highlight_start":1,"highlight_end":19},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)* ) => (","highlight_start":1,"highlight_end":71},{"text":"    compile_error!(\"alt uses '|' as separator, not ',':","highlight_start":1,"highlight_end":56},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      alt!(","highlight_start":1,"highlight_end":12},{"text":"        tag!(\\\"abcd\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"efgh\\\") |","highlight_start":1,"highlight_end":25},{"text":"        tag!(\\\"ijkl\\\")","highlight_start":1,"highlight_end":23},{"text":"      )","highlight_start":1,"highlight_end":8},{"text":"    \");","highlight_start":1,"highlight_end":8},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path, $($rest:tt)* ) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) , $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  (__impl $i:expr, $e:path | $($rest:tt)*) => (","highlight_start":1,"highlight_end":48},{"text":"    alt!(__impl $i, call!($e) | $($rest)*);","highlight_start":1,"highlight_end":44},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => (","highlight_start":1,"highlight_end":71},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      let res = $subrule!(i_, $($args)*);","highlight_start":1,"highlight_end":42},{"text":"      match res {","highlight_start":1,"highlight_end":18},{"text":"        Ok(o) => Ok(o),","highlight_start":1,"highlight_end":24},{"text":"        Err(Err::Error(e))      => {","highlight_start":1,"highlight_end":37},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          #[allow(dead_code)]","highlight_start":1,"highlight_end":30},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":89},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::lib::std::result::Result::*;","highlight_start":1,"highlight_end":47},{"text":"      use $crate::Err;","highlight_start":1,"highlight_end":23},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      match $subrule!(i_, $($args)* ) {","highlight_start":1,"highlight_end":40},{"text":"        Ok((i,o))         => Ok((i,$gen(o))),","highlight_start":1,"highlight_end":46},{"text":"        Err(Err::Error(e)) => {","highlight_start":1,"highlight_end":32},{"text":"          let out = alt!(__impl $i, $($rest)*);","highlight_start":1,"highlight_end":48},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          // Compile-time hack to ensure that res's E type is not under-specified.","highlight_start":1,"highlight_end":83},{"text":"          // This all has no effect at runtime.","highlight_start":1,"highlight_end":48},{"text":"          fn unify_types<T>(_: &T, _: &T) {}","highlight_start":1,"highlight_end":45},{"text":"          if let Err(Err::Error(ref e2)) = out {","highlight_start":1,"highlight_end":49},{"text":"            unify_types(&e, e2);","highlight_start":1,"highlight_end":33},{"text":"          }","highlight_start":1,"highlight_end":12},{"text":"","highlight_start":1,"highlight_end":1},{"text":"          out","highlight_start":1,"highlight_end":14},{"text":"        },","highlight_start":1,"highlight_end":11},{"text":"        Err(e) => Err(e),","highlight_start":1,"highlight_end":26},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, $e:path => { $gen:expr } | $($rest:tt)*) => (","highlight_start":1,"highlight_end":65},{"text":"    alt!(__impl $i, call!($e) => { $gen } | $($rest)*);","highlight_start":1,"highlight_end":56},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  (__impl $i:expr, __end) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use $crate::{Err,ErrorKind};","highlight_start":1,"highlight_end":35},{"text":"      let e2 = ErrorKind::Alt;","highlight_start":1,"highlight_end":31},{"text":"      let err = Err::Error(error_position!($i, e2));","highlight_start":1,"highlight_end":53},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      Err(err)","highlight_start":1,"highlight_end":15},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"","highlight_start":1,"highlight_end":1},{"text":"  ($i:expr, $($rest:tt)*) => (","highlight_start":1,"highlight_end":31},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      alt!(__impl $i, $($rest)* | __end)","highlight_start":1,"highlight_end":41},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"map!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/macros.rs","byte_start":22321,"byte_end":22817,"line_start":649,"line_end":668,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! map(","highlight_start":1,"highlight_end":18},{"text":"  // Internal parser, do not use directly","highlight_start":1,"highlight_end":42},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $g:expr) => (","highlight_start":1,"highlight_end":65},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      pub fn _unify<T, R, F: FnOnce(T) -> R>(f: F, t: T) -> R {","highlight_start":1,"highlight_end":64},{"text":"       f(t)","highlight_start":1,"highlight_end":12},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      ($submac!($i, $($args)*)).map(|(i,o)| {","highlight_start":1,"highlight_end":46},{"text":"        (i, _unify($g, o))","highlight_start":1,"highlight_end":27},{"text":"      })","highlight_start":1,"highlight_end":9},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $submac:ident!( $($args:tt)* ), $g:expr) => (","highlight_start":1,"highlight_end":58},{"text":"    map!(__impl $i, $submac!($($args)*), $g);","highlight_start":1,"highlight_end":46},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $f:expr, $g:expr) => (","highlight_start":1,"highlight_end":35},{"text":"    map!(__impl $i, call!($f), $g);","highlight_start":1,"highlight_end":36},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"map!","def_site_span":{"file_name":"/opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/nom-4.2.3/src/macros.rs","byte_start":22321,"byte_end":22817,"line_start":649,"line_end":668,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! map(","highlight_start":1,"highlight_end":18},{"text":"  // Internal parser, do not use directly","highlight_start":1,"highlight_end":42},{"text":"  (__impl $i:expr, $submac:ident!( $($args:tt)* ), $g:expr) => (","highlight_start":1,"highlight_end":65},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      pub fn _unify<T, R, F: FnOnce(T) -> R>(f: F, t: T) -> R {","highlight_start":1,"highlight_end":64},{"text":"       f(t)","highlight_start":1,"highlight_end":12},{"text":"      }","highlight_start":1,"highlight_end":8},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      ($submac!($i, $($args)*)).map(|(i,o)| {","highlight_start":1,"highlight_end":46},{"text":"        (i, _unify($g, o))","highlight_start":1,"highlight_end":27},{"text":"      })","highlight_start":1,"highlight_end":9},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $submac:ident!( $($args:tt)* ), $g:expr) => (","highlight_start":1,"highlight_end":58},{"text":"    map!(__impl $i, $submac!($($args)*), $g);","highlight_start":1,"highlight_end":46},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $f:expr, $g:expr) => (","highlight_start":1,"highlight_end":35},{"text":"    map!(__impl $i, call!($f), $g);","highlight_start":1,"highlight_end":36},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"to_str!","def_site_span":{"file_name":"src/reader/errors.rs","byte_start":2711,"byte_end":3020,"line_start":85,"line_end":95,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! to_str (","highlight_start":1,"highlight_end":22},{"text":"    ($i:expr, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":51},{"text":"        map_res_custom_error!($i, NomParserError::Utf8Error,","highlight_start":1,"highlight_end":61},{"text":"                      $submac!($($args)*),","highlight_start":1,"highlight_end":43},{"text":"                               str::from_utf8","highlight_start":1,"highlight_end":46},{"text":"        )","highlight_start":1,"highlight_end":10},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":"    ($i:expr, $f:expr) => (","highlight_start":1,"highlight_end":28},{"text":"        to_str!($i, call!($f));","highlight_start":1,"highlight_end":32},{"text":"    );","highlight_start":1,"highlight_end":7},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}},"macro_decl_name":"map_res_custom_error!","def_site_span":{"file_name":"src/reader/errors.rs","byte_start":1543,"byte_end":2709,"line_start":52,"line_end":83,"column_start":1,"column_end":3,"is_primary":false,"text":[{"text":"macro_rules! map_res_custom_error (","highlight_start":1,"highlight_end":36},{"text":"  // Internal parser, do not use directly","highlight_start":1,"highlight_end":42},{"text":"  (__impl $i:expr, $e:expr, $submac:ident!( $($args:tt)* ), $submac2:ident!( $($args2:tt)* )) => (","highlight_start":1,"highlight_end":99},{"text":"    {","highlight_start":1,"highlight_end":6},{"text":"      use ::std::result::Result::*;","highlight_start":1,"highlight_end":36},{"text":"      use ::nom::Err;","highlight_start":1,"highlight_end":22},{"text":"","highlight_start":1,"highlight_end":1},{"text":"      let i_ = $i.clone();","highlight_start":1,"highlight_end":27},{"text":"      ($submac!(i_, $($args)*)).and_then(|(i,o)| {","highlight_start":1,"highlight_end":51},{"text":"        match $submac2!(o, $($args2)*) {","highlight_start":1,"highlight_end":41},{"text":"          Ok(output) => Ok((i, output)),","highlight_start":1,"highlight_end":41},{"text":"          Err(_) => {","highlight_start":1,"highlight_end":22},{"text":"            let e = ::nom::ErrorKind::Custom(u32::from($e));","highlight_start":1,"highlight_end":61},{"text":"            Err(Err::Error(error_position!($i, e)))","highlight_start":1,"highlight_end":52},{"text":"          },","highlight_start":1,"highlight_end":13},{"text":"        }","highlight_start":1,"highlight_end":10},{"text":"      })","highlight_start":1,"highlight_end":9},{"text":"    }","highlight_start":1,"highlight_end":6},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $e:expr, $submac:ident!( $($args:tt)* ), $g:expr) => (","highlight_start":1,"highlight_end":67},{"text":"    map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));","highlight_start":1,"highlight_end":74},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $e:expr, $submac:ident!( $($args:tt)* ), $submac2:ident!( $($args2:tt)* )) => (","highlight_start":1,"highlight_end":92},{"text":"    map_res_custom_error!(__impl $i, $e, $submac!($($args)*), $submac2!($($args2)*));","highlight_start":1,"highlight_end":86},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $e:expr, $f:expr, $g:expr) => (","highlight_start":1,"highlight_end":44},{"text":"    map_res_custom_error!(__impl $i, $e, call!($f), call!($g));","highlight_start":1,"highlight_end":64},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":"  ($i:expr, $e:expr, $f:expr, $submac:ident!( $($args:tt)* )) => (","highlight_start":1,"highlight_end":67},{"text":"    map_res_custom_error!(__impl $i, call!($f), $submac!($($args)*));","highlight_start":1,"highlight_end":70},{"text":"  );","highlight_start":1,"highlight_end":5},{"text":");","highlight_start":1,"highlight_end":3}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}}}],"children":[{"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":"for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: trailing semicolon in macro used in expression position\u001b[0m\n\u001b[0m   \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0msrc/reader/errors.rs:72:73\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;12m72\u001b[0m\u001b[0m  \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m| \u001b[0m\u001b[0m  \u001b[0m\u001b[0m    map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));\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\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/reader/nom_parsers.rs:534: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;12m534\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[0mnamed!(\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m535\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    qualifier_key<QualifierKey>,\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m536\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    match_tags!(qualifier_key!,\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m537\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      one_of!(\"=\\r\\n\"),\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;12m555\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;12m556\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[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: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>\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 `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)\u001b[0m\n\n"}}
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:593:1
[INFO] [stdout]     |
[INFO] [stdout] 593 | / named!(
[INFO] [stdout] 594 | |     feature_kind<FeatureKind>,
[INFO] [stdout] 595 | |     match_tags!(
[INFO] [stdout] 596 | |            feature_kind!,
[INFO] [stdout] ...   |
[INFO] [stdout] 600 | |       )
[INFO] [stdout] 601 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:688:1
[INFO] [stdout]     |
[INFO] [stdout] 688 | / named!(
[INFO] [stdout] 689 | |     pos_external<CompleteByteSlice, Location>,
[INFO] [stdout] 690 | |     do_parse!(
[INFO] [stdout] 691 | |         accession: to_str!(map!(is_not!(": \t\r\n"), |x| x.0)) // convert to &[u8]
[INFO] [stdout] ...   |
[INFO] [stdout] 702 | |     )
[INFO] [stdout] 703 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:734:1
[INFO] [stdout]     |
[INFO] [stdout] 734 | / named!(
[INFO] [stdout] 735 | |     pub contig_text<Location>,
[INFO] [stdout] 736 | |     map_res_custom_error!(
[INFO] [stdout] 737 | |         NomParserError::Location,
[INFO] [stdout] ...   |
[INFO] [stdout] 744 | |     )
[INFO] [stdout] 745 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `map_res_custom_error`
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/reader/errors.rs:72:73
[INFO] [stdout]     |
[INFO] [stdout] 72  |       map_res_custom_error!(__impl $i, $e, $submac!($($args)*), call!($g));
[INFO] [stdout]     |                                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/reader/nom_parsers.rs:776:1
[INFO] [stdout]     |
[INFO] [stdout] 776 | / named_args!(sequence(len: Option<usize>) <Vec<u8>>,
[INFO] [stdout] 777 | |     map_res_custom_error!(
[INFO] [stdout] 778 | |         NomParserError::SequenceLength,
[INFO] [stdout] 779 | |         fold_many0!(sequence_chunk,
[INFO] [stdout] ...   |
[INFO] [stdout] 802 | |     )
[INFO] [stdout] 803 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `map_res_custom_error`
[INFO] [stdout]     = note: this warning originates in the macro `map_res_custom_error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: an associated function with this name may be added to the standard library in the future
[INFO] [stdout]    --> src/reader/nom_parsers.rs:212:15
[INFO] [stdout]     |
[INFO] [stdout] 212 |         lines.intersperse(b"\n")
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unstable_name_collisions)]` on by default
[INFO] [stdout]     = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stdout]     = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stdout]     = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: an associated function with this name may be added to the standard library in the future
[INFO] [stdout]    --> src/reader/nom_parsers.rs:212:15
[INFO] [stdout]     |
[INFO] [stdout] 212 |         lines.intersperse(b"\n")
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unstable_name_collisions)]` on by default
[INFO] [stdout]     = warning: once this associated item is added to the standard library, the ambiguity may cause an error or change in behavior!
[INFO] [stdout]     = note: for more information, see issue #48919 <https://github.com/rust-lang/rust/issues/48919>
[INFO] [stdout]     = help: call with fully qualified syntax `itertools::Itertools::intersperse(...)` to keep using the current method
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors; 21 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `gb-io` due to 5 previous errors; 21 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: 21 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "5539c6465e93d1718b2956d09c60bdf118e629a7cc7da6202a6c4d617bff7b81", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5539c6465e93d1718b2956d09c60bdf118e629a7cc7da6202a6c4d617bff7b81", kill_on_drop: false }`
[INFO] [stdout] 5539c6465e93d1718b2956d09c60bdf118e629a7cc7da6202a6c4d617bff7b81
