[INFO] fetching crate typ-p 0.0.1...
[INFO] checking typ-p-0.0.1 against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577
[INFO] extracting crate typ-p 0.0.1 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate typ-p 0.0.1
[INFO] finished tweaking crates.io crate typ-p 0.0.1
[INFO] tweaked toml for crates.io crate typ-p 0.0.1 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate typ-p 0.0.1 on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 255 packages to latest compatible versions
[INFO] [stderr]       Adding matchit v0.8.4 (available: v0.8.6)
[INFO] [stderr]       Adding tonic v0.12.3 (available: v0.14.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 84c012f9803bcd408eeb3c1382094e70987b799da8650b42f4912820af7a35f9
[INFO] running `Command { std: "docker" "start" "-a" "84c012f9803bcd408eeb3c1382094e70987b799da8650b42f4912820af7a35f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "84c012f9803bcd408eeb3c1382094e70987b799da8650b42f4912820af7a35f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "84c012f9803bcd408eeb3c1382094e70987b799da8650b42f4912820af7a35f9", kill_on_drop: false }`
[INFO] [stdout] 84c012f9803bcd408eeb3c1382094e70987b799da8650b42f4912820af7a35f9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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=forbid -Dunmustuse_in_always_ok" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8195956a1c2b20e56245ed4ca058505f41b250f32ef8b737c8970e6ec22238e4
[INFO] running `Command { std: "docker" "start" "-a" "8195956a1c2b20e56245ed4ca058505f41b250f32ef8b737c8970e6ec22238e4", kill_on_drop: false }`
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling cc v1.2.45
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking tower-layer v0.3.3
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking mime v0.3.17
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking litemap v0.8.1
[INFO] [stderr]     Checking writeable v0.6.2
[INFO] [stderr]     Checking httpdate v1.0.3
[INFO] [stderr]    Compiling rustls v0.23.35
[INFO] [stderr]    Compiling icu_properties_data v2.1.1
[INFO] [stderr]     Checking ipnet v2.11.0
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]     Checking openssl-probe v0.1.6
[INFO] [stderr]     Checking flate2 v1.1.5
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling unicase v2.8.1
[INFO] [stderr]     Checking deranged v0.5.5
[INFO] [stderr]     Checking axum-core v0.5.5
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]     Checking compression-core v0.4.30
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]     Checking matchit v0.8.4
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking iri-string v0.7.9
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking pem v3.0.6
[INFO] [stderr]     Checking matchit v0.7.3
[INFO] [stderr]     Checking compression-codecs v0.4.32
[INFO] [stderr]    Compiling uuid v1.18.1
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]    Compiling err-derive v0.3.1
[INFO] [stderr]     Checking anstyle-query v1.1.5
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking prost v0.13.5
[INFO] [stderr]     Checking jiff v0.2.16
[INFO] [stderr]    Compiling m-helper v0.0.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking time v0.3.44
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking env_filter v0.1.4
[INFO] [stderr]     Checking env_logger v0.11.8
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling prost-derive v0.14.1
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling derive_pb v0.0.2
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]     Checking rustls-pki-types v1.13.0
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking rustls-webpki v0.103.8
[INFO] [stderr]     Checking rustls-native-certs v0.8.2
[INFO] [stderr]     Checking rustls-pemfile v2.2.0
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking prost v0.14.1
[INFO] [stderr]     Checking prost-types v0.14.1
[INFO] [stderr]     Checking simple_asn1 v0.6.3
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]     Checking jsonwebtoken v9.3.1
[INFO] [stderr]     Checking secret-vault-value v1.0.1
[INFO] [stderr]     Checking envy v0.4.2
[INFO] [stderr]     Checking icu_properties v2.1.1
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking chronoutil v0.2.7
[INFO] [stderr]     Checking tokio-util v0.7.17
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]     Checking async-compression v0.4.33
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking h2 v0.4.12
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]     Checking axum v0.8.6
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking hyper v1.8.0
[INFO] [stderr]     Checking hyper-util v0.1.18
[INFO] [stderr]     Checking hyper-timeout v0.5.2
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking tonic v0.14.2
[INFO] [stderr]     Checking tonic v0.12.3
[INFO] [stderr]     Checking reqwest v0.12.24
[INFO] [stderr]     Checking tonic-prost v0.14.2
[INFO] [stderr]     Checking gcloud-sdk v0.28.3
[INFO] [stderr]     Checking typ-p v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] struct
[INFO] [stderr] key: "pb_name"
[INFO] [stderr] value: "pb_Date"
[INFO] [stderr] hashmap: {"pb_name": "pb_Date"}
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] 1
[INFO] [stderr] value: "pb_DateDelta"
[INFO] [stderr] hashmap: {"pb_name": "pb_DateDelta"}
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(5268..5270) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(5271..5278) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(5279..5280) }, Literal { kind: Str, symbol: "pb_Date", suffix: None, span: #0 bytes(5281..5290) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(5268..5270) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(5271..5278) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(5279..5280) }, Literal { kind: Str, symbol: "pb_Date", suffix: None, span: #0 bytes(5281..5290) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] AAA
[INFO] [stdout] BBB
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "value", span: #0 bytes(5315..5320) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "u32", span: #0 bytes(5322..5325) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "u32", span: #0 bytes(5322..5325) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "value", span: #0 bytes(5315..5320) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "u32", span: #0 bytes(5322..5325) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "value", span: #0 bytes(5315..5320) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "value", span: #0 bytes(5315..5320) } "m_helper" [Ident { ident: "u32", span: #0 bytes(5322..5325) }] None None
[INFO] [stdout] get_field_name: Some(Ident { ident: "value", span: #0 bytes(5315..5320) })
[INFO] [stdout] struct
[INFO] [stdout] 4
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(11825..11827) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(11828..11835) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(11836..11837) }, Literal { kind: Str, symbol: "pb_DateDelta", suffix: None, span: #0 bytes(11838..11852) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(11825..11827) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(11828..11835) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(11836..11837) }, Literal { kind: Str, symbol: "pb_DateDelta", suffix: None, span: #0 bytes(11838..11852) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] AAA
[INFO] [stdout] BBB
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "year", span: #0 bytes(11886..11890) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11892..11895) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "month", span: #0 bytes(11905..11910) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11912..11915) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "week", span: #0 bytes(11925..11929) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11931..11934) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "day", span: #0 bytes(11944..11947) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11949..11952) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(11892..11895) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "year", span: #0 bytes(11886..11890) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11892..11895) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "year", span: #0 bytes(11886..11890) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "year", span: #0 bytes(11886..11890) } "m_helper" [Ident { ident: "i32", span: #0 bytes(11892..11895) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(11912..11915) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "month", span: #0 bytes(11905..11910) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11912..11915) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "month", span: #0 bytes(11905..11910) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "month", span: #0 bytes(11905..11910) } "m_helper" [Ident { ident: "i32", span: #0 bytes(11912..11915) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(11931..11934) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "week", span: #0 bytes(11925..11929) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11931..11934) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "week", span: #0 bytes(11925..11929) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "week", span: #0 bytes(11925..11929) } "m_helper" [Ident { ident: "i32", span: #0 bytes(11931..11934) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(11949..11952) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "day", span: #0 bytes(11944..11947) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11949..11952) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "day", span: #0 bytes(11944..11947) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "day", span: #0 bytes(11944..11947) } "m_helper" [Ident { ident: "i32", span: #0 bytes(11949..11952) }] None None
[INFO] [stdout] get_field_name: Some(Ident { ident: "year", span: #0 bytes(11886..11890) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "month", span: #0 bytes(11905..11910) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "week", span: #0 bytes(11925..11929) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "day", span: #0 bytes(11944..11947) })
[INFO] [stdout] struct
[INFO] [stdout] 2
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(13168..13170) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(13171..13178) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(13179..13180) }, Literal { kind: Str, symbol: "pb_DateRange", suffix: None, span: #0 bytes(13181..13195) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(13168..13170) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(13171..13178) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(13179..13180) }, Literal { kind: Str, symbol: "pb_DateRange", suffix: None, span: #0 bytes(13181..13195) }] } }
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] A
[INFO] [stderr] value: "pb_DateRange"
[INFO] [stdout] B
[INFO] [stderr] hashmap: {"pb_name": "pb_DateRange"}
[INFO] [stdout] AAA
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] BBB
[INFO] [stderr] value: "pb_Date"
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stderr] hashmap: {"pb_name": "pb_Date"}
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "date_from", span: #0 bytes(13225..13234) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Option", span: #0 bytes(13236..13242) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Date", span: #0 bytes(13243..13247) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } }
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "date_to", span: #0 bytes(13254..13261) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Option", span: #0 bytes(13263..13269) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Date", span: #0 bytes(13270..13274) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } }
[INFO] [stderr] value: "pb_DateDelta"
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "Option", span: #0 bytes(13236..13242) }, Ident { ident: "Date", span: #0 bytes(13243..13247) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "date_from", span: #0 bytes(13225..13234) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Option", span: #0 bytes(13236..13242) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Date", span: #0 bytes(13243..13247) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } } }
[INFO] [stderr] hashmap: {"pb_name": "pb_DateDelta"}
[INFO] [stdout] get_field_name: Some(Ident { ident: "date_from", span: #0 bytes(13225..13234) })
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] get_from_field_quote: Ident { ident: "date_from", span: #0 bytes(13225..13234) } "m_helper" [Ident { ident: "Option", span: #0 bytes(13236..13242) }, Ident { ident: "Date", span: #0 bytes(13243..13247) }] None None
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] get_from_field_quote: Ident { ident: "date_from", span: #0 bytes(13225..13234) } "m_helper" [Ident { ident: "Date", span: #0 bytes(13243..13247) }] Some(Ident { ident: "Option", span: #0 bytes(13236..13242) }) None
[INFO] [stderr] value: "pb_DateTime"
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_option_pb_to_option_one"
[INFO] [stderr] key: "module_path"
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "Option", span: #0 bytes(13263..13269) }, Ident { ident: "Date", span: #0 bytes(13270..13274) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "date_to", span: #0 bytes(13254..13261) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Option", span: #0 bytes(13263..13269) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Date", span: #0 bytes(13270..13274) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } } }
[INFO] [stderr] value: "super::super::pb"
[INFO] [stdout] get_field_name: Some(Ident { ident: "date_to", span: #0 bytes(13254..13261) })
[INFO] [stderr] key: "trait_path"
[INFO] [stdout] get_from_field_quote: Ident { ident: "date_to", span: #0 bytes(13254..13261) } "m_helper" [Ident { ident: "Option", span: #0 bytes(13263..13269) }, Ident { ident: "Date", span: #0 bytes(13270..13274) }] None None
[INFO] [stderr] value: "super::super::pb"
[INFO] [stdout] get_from_field_quote: Ident { ident: "date_to", span: #0 bytes(13254..13261) } "m_helper" [Ident { ident: "Date", span: #0 bytes(13270..13274) }] Some(Ident { ident: "Option", span: #0 bytes(13263..13269) }) None
[INFO] [stderr] hashmap: {"module_path": "super::super::pb", "trait_path": "super::super::pb", "pb_name": "pb_DateTime"}
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_option_pb_to_option_one"
[INFO] [stderr] value: "pb_DateRange"
[INFO] [stdout] get_field_name: Some(Ident { ident: "date_from", span: #0 bytes(13225..13234) })
[INFO] [stderr] hashmap: {"pb_name": "pb_DateRange"}
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_option_one_to_option_pb"
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] struct
[INFO] [stderr] value: "pb_Number"
[INFO] [stdout] 1
[INFO] [stderr] hashmap: {"pb_name": "pb_Number"}
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(5268..5270) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(5271..5278) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(5279..5280) }, Literal { kind: Str, symbol: "pb_Date", suffix: None, span: #0 bytes(5281..5290) }] } }
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(5268..5270) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(5271..5278) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(5279..5280) }, Literal { kind: Str, symbol: "pb_Date", suffix: None, span: #0 bytes(5281..5290) }] } }
[INFO] [stderr] value: "pb_ValueOf"
[INFO] [stdout] A
[INFO] [stderr] hashmap: {"pb_name": "pb_ValueOf"}
[INFO] [stdout] B
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] AAA
[INFO] [stderr] value: "pb_DateTime"
[INFO] [stdout] BBB
[INFO] [stderr] key: "module_path"
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stderr] value: "super::super::pb"
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "value", span: #0 bytes(5315..5320) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "u32", span: #0 bytes(5322..5325) }, arguments: PathArguments::None }] } } }
[INFO] [stderr] key: "trait_path"
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "u32", span: #0 bytes(5322..5325) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "value", span: #0 bytes(5315..5320) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "u32", span: #0 bytes(5322..5325) }, arguments: PathArguments::None }] } } } }
[INFO] [stderr] value: "super::super::pb"
[INFO] [stdout] get_field_name: Some(Ident { ident: "value", span: #0 bytes(5315..5320) })
[INFO] [stderr] hashmap: {"trait_path": "super::super::pb", "module_path": "super::super::pb", "pb_name": "pb_DateTime"}
[INFO] [stdout] get_from_field_quote: Ident { ident: "value", span: #0 bytes(5315..5320) } "m_helper" [Ident { ident: "u32", span: #0 bytes(5322..5325) }] None None
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] get_field_name: Some(Ident { ident: "value", span: #0 bytes(5315..5320) })
[INFO] [stderr] value: "pb_Uuid"
[INFO] [stdout] get_field_name: Some(Ident { ident: "date_to", span: #0 bytes(13254..13261) })
[INFO] [stderr] key: "module_path"
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_option_one_to_option_pb"
[INFO] [stderr] value: "super::super::super::pb"
[INFO] [stdout] struct
[INFO] [stderr] key: "trait_path"
[INFO] [stdout] 4
[INFO] [stderr] value: "super::super::super::pb"
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(11825..11827) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(11828..11835) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(11836..11837) }, Literal { kind: Str, symbol: "pb_DateDelta", suffix: None, span: #0 bytes(11838..11852) }] } }
[INFO] [stderr] hashmap: {"module_path": "super::super::super::pb", "trait_path": "super::super::super::pb", "pb_name": "pb_Uuid"}
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(11825..11827) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(11828..11835) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(11836..11837) }, Literal { kind: Str, symbol: "pb_DateDelta", suffix: None, span: #0 bytes(11838..11852) }] } }
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] A
[INFO] [stderr] value: "pb_Number"
[INFO] [stdout] B
[INFO] [stderr] hashmap: {"pb_name": "pb_Number"}
[INFO] [stdout] AAA
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] BBB
[INFO] [stderr] value: "pb_ValueOf"
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stderr] hashmap: {"pb_name": "pb_ValueOf"}
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "year", span: #0 bytes(11886..11890) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11892..11895) }, arguments: PathArguments::None }] } } }
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "month", span: #0 bytes(11905..11910) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11912..11915) }, arguments: PathArguments::None }] } } }
[INFO] [stderr] value: "pb_Uuid"
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "week", span: #0 bytes(11925..11929) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11931..11934) }, arguments: PathArguments::None }] } } }
[INFO] [stderr] key: "module_path"
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "day", span: #0 bytes(11944..11947) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11949..11952) }, arguments: PathArguments::None }] } } }
[INFO] [stderr] value: "super::super::super::pb"
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(11892..11895) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "year", span: #0 bytes(11886..11890) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11892..11895) }, arguments: PathArguments::None }] } } } }
[INFO] [stderr] key: "trait_path"
[INFO] [stdout] get_field_name: Some(Ident { ident: "year", span: #0 bytes(11886..11890) })
[INFO] [stderr] value: "super::super::super::pb"
[INFO] [stdout] get_from_field_quote: Ident { ident: "year", span: #0 bytes(11886..11890) } "m_helper" [Ident { ident: "i32", span: #0 bytes(11892..11895) }] None None
[INFO] [stderr] hashmap: {"pb_name": "pb_Uuid", "module_path": "super::super::super::pb", "trait_path": "super::super::super::pb"}
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(11912..11915) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "month", span: #0 bytes(11905..11910) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11912..11915) }, arguments: PathArguments::None }] } } } }
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] get_field_name: Some(Ident { ident: "month", span: #0 bytes(11905..11910) })
[INFO] [stderr] value: "pb_ArrayValue"
[INFO] [stdout] get_from_field_quote: Ident { ident: "month", span: #0 bytes(11905..11910) } "m_helper" [Ident { ident: "i32", span: #0 bytes(11912..11915) }] None None
[INFO] [stderr] hashmap: {"pb_name": "pb_ArrayValue"}
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(11931..11934) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "week", span: #0 bytes(11925..11929) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11931..11934) }, arguments: PathArguments::None }] } } } }
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] get_field_name: Some(Ident { ident: "week", span: #0 bytes(11925..11929) })
[INFO] [stderr] value: "pb_ValueType"
[INFO] [stdout] get_from_field_quote: Ident { ident: "week", span: #0 bytes(11925..11929) } "m_helper" [Ident { ident: "i32", span: #0 bytes(11931..11934) }] None None
[INFO] [stderr] hashmap: {"pb_name": "pb_ValueType"}
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(11949..11952) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "day", span: #0 bytes(11944..11947) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(11949..11952) }, arguments: PathArguments::None }] } } } }
[INFO] [stderr] key: "i32"
[INFO] [stdout] get_field_name: Some(Ident { ident: "day", span: #0 bytes(11944..11947) })
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] get_from_field_quote: Ident { ident: "day", span: #0 bytes(11944..11947) } "m_helper" [Ident { ident: "i32", span: #0 bytes(11949..11952) }] None None
[INFO] [stderr] value: "pb_ArrayValue"
[INFO] [stdout] get_field_name: Some(Ident { ident: "year", span: #0 bytes(11886..11890) })
[INFO] [stderr] hashmap: {"pb_name": "pb_ArrayValue"}
[INFO] [stdout] get_field_name: Some(Ident { ident: "month", span: #0 bytes(11905..11910) })
[INFO] [stderr] key: "pb_name"
[INFO] [stdout] get_field_name: Some(Ident { ident: "week", span: #0 bytes(11925..11929) })
[INFO] [stderr] value: "pb_ValueType"
[INFO] [stdout] get_field_name: Some(Ident { ident: "day", span: #0 bytes(11944..11947) })
[INFO] [stderr] hashmap: {"pb_name": "pb_ValueType"}
[INFO] [stdout] struct
[INFO] [stderr] key: "i32"
[INFO] [stdout] 2
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(13168..13170) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(13171..13178) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(13179..13180) }, Literal { kind: Str, symbol: "pb_DateRange", suffix: None, span: #0 bytes(13181..13195) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(13168..13170) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(13171..13178) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(13179..13180) }, Literal { kind: Str, symbol: "pb_DateRange", suffix: None, span: #0 bytes(13181..13195) }] } }
[INFO] [stdout] struct
[INFO] [stdout] 6
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(16027..16029) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(16035..16042) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(16043..16044) }, Literal { kind: Str, symbol: "pb_DateTime", suffix: None, span: #0 bytes(16045..16058) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(16058..16059) }, Ident { ident: "module_path", span: #0 bytes(16064..16075) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(16076..16077) }, Literal { kind: Str, symbol: "super::super::pb", suffix: None, span: #0 bytes(16078..16096) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(16096..16097) }, Ident { ident: "trait_path", span: #0 bytes(16102..16112) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(16113..16114) }, Literal { kind: Str, symbol: "super::super::pb", suffix: None, span: #0 bytes(16115..16133) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(16027..16029) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(16035..16042) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(16043..16044) }, Literal { kind: Str, symbol: "pb_DateTime", suffix: None, span: #0 bytes(16045..16058) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(16058..16059) }, Ident { ident: "module_path", span: #0 bytes(16064..16075) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(16076..16077) }, Literal { kind: Str, symbol: "super::super::pb", suffix: None, span: #0 bytes(16078..16096) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(16096..16097) }, Ident { ident: "trait_path", span: #0 bytes(16102..16112) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(16113..16114) }, Literal { kind: Str, symbol: "super::super::pb", suffix: None, span: #0 bytes(16115..16133) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] AAA
[INFO] [stdout] BBB
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "year", span: #0 bytes(16163..16167) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16169..16172) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "month", span: #0 bytes(16178..16183) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16185..16188) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "day", span: #0 bytes(16194..16197) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16199..16202) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "hour", span: #0 bytes(16209..16213) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16215..16218) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "minute", span: #0 bytes(16224..16230) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16232..16235) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "second", span: #0 bytes(16241..16247) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16249..16252) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(16169..16172) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "year", span: #0 bytes(16163..16167) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16169..16172) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "year", span: #0 bytes(16163..16167) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "year", span: #0 bytes(16163..16167) } "super::super::pb" [Ident { ident: "i32", span: #0 bytes(16169..16172) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(16185..16188) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "month", span: #0 bytes(16178..16183) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16185..16188) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "month", span: #0 bytes(16178..16183) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "month", span: #0 bytes(16178..16183) } "super::super::pb" [Ident { ident: "i32", span: #0 bytes(16185..16188) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(16199..16202) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "day", span: #0 bytes(16194..16197) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16199..16202) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "day", span: #0 bytes(16194..16197) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "day", span: #0 bytes(16194..16197) } "super::super::pb" [Ident { ident: "i32", span: #0 bytes(16199..16202) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(16215..16218) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "hour", span: #0 bytes(16209..16213) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16215..16218) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "hour", span: #0 bytes(16209..16213) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "hour", span: #0 bytes(16209..16213) } "super::super::pb" [Ident { ident: "i32", span: #0 bytes(16215..16218) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(16232..16235) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "minute", span: #0 bytes(16224..16230) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16232..16235) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "minute", span: #0 bytes(16224..16230) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "minute", span: #0 bytes(16224..16230) } "super::super::pb" [Ident { ident: "i32", span: #0 bytes(16232..16235) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(16249..16252) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "second", span: #0 bytes(16241..16247) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16249..16252) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "second", span: #0 bytes(16241..16247) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "second", span: #0 bytes(16241..16247) } "super::super::pb" [Ident { ident: "i32", span: #0 bytes(16249..16252) }] None None
[INFO] [stdout] get_field_name: Some(Ident { ident: "year", span: #0 bytes(16163..16167) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "month", span: #0 bytes(16178..16183) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "day", span: #0 bytes(16194..16197) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "hour", span: #0 bytes(16209..16213) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "minute", span: #0 bytes(16224..16230) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "second", span: #0 bytes(16241..16247) })
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] AAA
[INFO] [stdout] BBB
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "date_from", span: #0 bytes(13225..13234) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Option", span: #0 bytes(13236..13242) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Date", span: #0 bytes(13243..13247) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "date_to", span: #0 bytes(13254..13261) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Option", span: #0 bytes(13263..13269) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Date", span: #0 bytes(13270..13274) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } }
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "Option", span: #0 bytes(13236..13242) }, Ident { ident: "Date", span: #0 bytes(13243..13247) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "date_from", span: #0 bytes(13225..13234) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Option", span: #0 bytes(13236..13242) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Date", span: #0 bytes(13243..13247) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "date_from", span: #0 bytes(13225..13234) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "date_from", span: #0 bytes(13225..13234) } "m_helper" [Ident { ident: "Option", span: #0 bytes(13236..13242) }, Ident { ident: "Date", span: #0 bytes(13243..13247) }] None None
[INFO] [stdout] get_from_field_quote: Ident { ident: "date_from", span: #0 bytes(13225..13234) } "m_helper" [Ident { ident: "Date", span: #0 bytes(13243..13247) }] Some(Ident { ident: "Option", span: #0 bytes(13236..13242) }) None
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_option_pb_to_option_one"
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "Option", span: #0 bytes(13263..13269) }, Ident { ident: "Date", span: #0 bytes(13270..13274) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "date_to", span: #0 bytes(13254..13261) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Option", span: #0 bytes(13263..13269) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Date", span: #0 bytes(13270..13274) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "date_to", span: #0 bytes(13254..13261) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "date_to", span: #0 bytes(13254..13261) } "m_helper" [Ident { ident: "Option", span: #0 bytes(13263..13269) }, Ident { ident: "Date", span: #0 bytes(13270..13274) }] None None
[INFO] [stdout] get_from_field_quote: Ident { ident: "date_to", span: #0 bytes(13254..13261) } "m_helper" [Ident { ident: "Date", span: #0 bytes(13270..13274) }] Some(Ident { ident: "Option", span: #0 bytes(13263..13269) }) None
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_option_pb_to_option_one"
[INFO] [stdout] get_field_name: Some(Ident { ident: "date_from", span: #0 bytes(13225..13234) })
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_option_one_to_option_pb"
[INFO] [stdout] get_field_name: Some(Ident { ident: "date_to", span: #0 bytes(13254..13261) })
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_option_one_to_option_pb"
[INFO] [stdout] struct
[INFO] [stdout] 1
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(18732..18734) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(18735..18742) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(18743..18744) }, Literal { kind: Str, symbol: "pb_Number", suffix: None, span: #0 bytes(18745..18756) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(18732..18734) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(18735..18742) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(18743..18744) }, Literal { kind: Str, symbol: "pb_Number", suffix: None, span: #0 bytes(18745..18756) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] AAA
[INFO] [stdout] BBB
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "value_of", span: #0 bytes(18787..18795) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Option", span: #0 bytes(18797..18803) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "ValueOf", span: #0 bytes(18804..18811) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } }
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "Option", span: #0 bytes(18797..18803) }, Ident { ident: "ValueOf", span: #0 bytes(18804..18811) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "value_of", span: #0 bytes(18787..18795) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Option", span: #0 bytes(18797..18803) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "ValueOf", span: #0 bytes(18804..18811) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "value_of", span: #0 bytes(18787..18795) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "value_of", span: #0 bytes(18787..18795) } "m_helper" [Ident { ident: "Option", span: #0 bytes(18797..18803) }, Ident { ident: "ValueOf", span: #0 bytes(18804..18811) }] None None
[INFO] [stdout] get_from_field_quote: Ident { ident: "value_of", span: #0 bytes(18787..18795) } "m_helper" [Ident { ident: "ValueOf", span: #0 bytes(18804..18811) }] Some(Ident { ident: "Option", span: #0 bytes(18797..18803) }) None
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_option_pb_to_option_one"
[INFO] [stdout] get_field_name: Some(Ident { ident: "value_of", span: #0 bytes(18787..18795) })
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_option_one_to_option_pb"
[INFO] [stdout] Enum
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(19869..19871) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(19872..19879) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(19880..19881) }, Literal { kind: Str, symbol: "pb_ValueOf", suffix: None, span: #0 bytes(19882..19894) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(19869..19871) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(19872..19879) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(19880..19881) }, Literal { kind: Str, symbol: "pb_ValueOf", suffix: None, span: #0 bytes(19882..19894) }] } }
[INFO] [stdout] A
[INFO] [stdout] struct
[INFO] [stdout] B
[INFO] [stdout] new: Ident { ident: "ValueOf", span: #0 bytes(19906..19913) }|Ident { ident: "pb_ValueOf", span: #0 bytes(19906..19913) }|"m_helper"
[INFO] [stdout] dataenum: [Variant { attrs: [], ident: Ident { ident: "Int32Value", span: #0 bytes(19920..19930) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(19931..19934) }, arguments: PathArguments::None }] } } }] }, discriminant: None }, Comma, Variant { attrs: [], ident: Ident { ident: "Int64Value", span: #0 bytes(19941..19951) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i64", span: #0 bytes(19952..19955) }, arguments: PathArguments::None }] } } }] }, discriminant: None }, Comma, Variant { attrs: [], ident: Ident { ident: "FloatValue", span: #0 bytes(19962..19972) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "f32", span: #0 bytes(19973..19976) }, arguments: PathArguments::None }] } } }] }, discriminant: None }, Comma, Variant { attrs: [], ident: Ident { ident: "DoubleValue", span: #0 bytes(19983..19994) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "f64", span: #0 bytes(19995..19998) }, arguments: PathArguments::None }] } } }] }, discriminant: None }, Comma]
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Int32Value", span: #0 bytes(19920..19930) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(19931..19934) }, arguments: PathArguments::None }] } } }] }, discriminant: None }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Int64Value", span: #0 bytes(19941..19951) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i64", span: #0 bytes(19952..19955) }, arguments: PathArguments::None }] } } }] }, discriminant: None }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "FloatValue", span: #0 bytes(19962..19972) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "f32", span: #0 bytes(19973..19976) }, arguments: PathArguments::None }] } } }] }, discriminant: None }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "DoubleValue", span: #0 bytes(19983..19994) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "f64", span: #0 bytes(19995..19998) }, arguments: PathArguments::None }] } } }] }, discriminant: None }
[INFO] [stdout] FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] "Int32Value"
[INFO] [stdout] []
[INFO] [stdout] "Int64Value"
[INFO] [stdout] []
[INFO] [stdout] "FloatValue"
[INFO] [stdout] []
[INFO] [stdout] "DoubleValue"
[INFO] [stdout] []
[INFO] [stdout] 6
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(16027..16029) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(16035..16042) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(16043..16044) }, Literal { kind: Str, symbol: "pb_DateTime", suffix: None, span: #0 bytes(16045..16058) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(16058..16059) }, Ident { ident: "module_path", span: #0 bytes(16064..16075) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(16076..16077) }, Literal { kind: Str, symbol: "super::super::pb", suffix: None, span: #0 bytes(16078..16096) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(16096..16097) }, Ident { ident: "trait_path", span: #0 bytes(16102..16112) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(16113..16114) }, Literal { kind: Str, symbol: "super::super::pb", suffix: None, span: #0 bytes(16115..16133) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(16027..16029) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(16035..16042) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(16043..16044) }, Literal { kind: Str, symbol: "pb_DateTime", suffix: None, span: #0 bytes(16045..16058) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(16058..16059) }, Ident { ident: "module_path", span: #0 bytes(16064..16075) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(16076..16077) }, Literal { kind: Str, symbol: "super::super::pb", suffix: None, span: #0 bytes(16078..16096) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(16096..16097) }, Ident { ident: "trait_path", span: #0 bytes(16102..16112) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(16113..16114) }, Literal { kind: Str, symbol: "super::super::pb", suffix: None, span: #0 bytes(16115..16133) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] AAA
[INFO] [stdout] BBB
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "year", span: #0 bytes(16163..16167) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16169..16172) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "month", span: #0 bytes(16178..16183) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16185..16188) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "day", span: #0 bytes(16194..16197) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16199..16202) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "hour", span: #0 bytes(16209..16213) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16215..16218) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "minute", span: #0 bytes(16224..16230) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16232..16235) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "second", span: #0 bytes(16241..16247) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16249..16252) }, arguments: PathArguments::None }] } } }
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(16169..16172) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "year", span: #0 bytes(16163..16167) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16169..16172) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "year", span: #0 bytes(16163..16167) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "year", span: #0 bytes(16163..16167) } "super::super::pb" [Ident { ident: "i32", span: #0 bytes(16169..16172) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(16185..16188) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "month", span: #0 bytes(16178..16183) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16185..16188) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "month", span: #0 bytes(16178..16183) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "month", span: #0 bytes(16178..16183) } "super::super::pb" [Ident { ident: "i32", span: #0 bytes(16185..16188) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(16199..16202) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "day", span: #0 bytes(16194..16197) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16199..16202) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "day", span: #0 bytes(16194..16197) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "day", span: #0 bytes(16194..16197) } "super::super::pb" [Ident { ident: "i32", span: #0 bytes(16199..16202) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(16215..16218) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "hour", span: #0 bytes(16209..16213) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16215..16218) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "hour", span: #0 bytes(16209..16213) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "hour", span: #0 bytes(16209..16213) } "super::super::pb" [Ident { ident: "i32", span: #0 bytes(16215..16218) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(16232..16235) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "minute", span: #0 bytes(16224..16230) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16232..16235) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "minute", span: #0 bytes(16224..16230) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "minute", span: #0 bytes(16224..16230) } "super::super::pb" [Ident { ident: "i32", span: #0 bytes(16232..16235) }] None None
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "i32", span: #0 bytes(16249..16252) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "second", span: #0 bytes(16241..16247) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(16249..16252) }, arguments: PathArguments::None }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "second", span: #0 bytes(16241..16247) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "second", span: #0 bytes(16241..16247) } "super::super::pb" [Ident { ident: "i32", span: #0 bytes(16249..16252) }] None None
[INFO] [stdout] get_field_name: Some(Ident { ident: "year", span: #0 bytes(16163..16167) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "month", span: #0 bytes(16178..16183) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "day", span: #0 bytes(16194..16197) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "hour", span: #0 bytes(16209..16213) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "minute", span: #0 bytes(16224..16230) })
[INFO] [stdout] get_field_name: Some(Ident { ident: "second", span: #0 bytes(16241..16247) })
[INFO] [stdout] struct
[INFO] [stdout] 1
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(23344..23346) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(23352..23359) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(23360..23361) }, Literal { kind: Str, symbol: "pb_Uuid", suffix: None, span: #0 bytes(23362..23371) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(23371..23372) }, Ident { ident: "module_path", span: #0 bytes(23377..23388) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(23389..23390) }, Literal { kind: Str, symbol: "super::super::super::pb", suffix: None, span: #0 bytes(23391..23416) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(23416..23417) }, Ident { ident: "trait_path", span: #0 bytes(23422..23432) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(23433..23434) }, Literal { kind: Str, symbol: "super::super::super::pb", suffix: None, span: #0 bytes(23435..23460) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(23344..23346) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(23352..23359) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(23360..23361) }, Literal { kind: Str, symbol: "pb_Uuid", suffix: None, span: #0 bytes(23362..23371) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(23371..23372) }, Ident { ident: "module_path", span: #0 bytes(23377..23388) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(23389..23390) }, Literal { kind: Str, symbol: "super::super::super::pb", suffix: None, span: #0 bytes(23391..23416) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(23416..23417) }, Ident { ident: "trait_path", span: #0 bytes(23422..23432) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(23433..23434) }, Literal { kind: Str, symbol: "super::super::super::pb", suffix: None, span: #0 bytes(23435..23460) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] AAA
[INFO] [stdout] BBB
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "uuid_value", span: #0 bytes(23490..23500) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Vec", span: #0 bytes(23502..23505) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "u8", span: #0 bytes(23506..23508) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } }
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "Vec", span: #0 bytes(23502..23505) }, Ident { ident: "u8", span: #0 bytes(23506..23508) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "uuid_value", span: #0 bytes(23490..23500) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Vec", span: #0 bytes(23502..23505) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "u8", span: #0 bytes(23506..23508) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "uuid_value", span: #0 bytes(23490..23500) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "uuid_value", span: #0 bytes(23490..23500) } "super::super::super::pb" [Ident { ident: "Vec", span: #0 bytes(23502..23505) }, Ident { ident: "u8", span: #0 bytes(23506..23508) }] None None
[INFO] [stdout] get_from_field_quote: Ident { ident: "uuid_value", span: #0 bytes(23490..23500) } "super::super::super::pb" [Ident { ident: "u8", span: #0 bytes(23506..23508) }] Some(Ident { ident: "Vec", span: #0 bytes(23502..23505) }) None
[INFO] [stdout] get_field_name: Some(Ident { ident: "uuid_value", span: #0 bytes(23490..23500) })
[INFO] [stdout] struct
[INFO] [stdout] 1
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(18732..18734) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(18735..18742) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(18743..18744) }, Literal { kind: Str, symbol: "pb_Number", suffix: None, span: #0 bytes(18745..18756) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(18732..18734) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(18735..18742) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(18743..18744) }, Literal { kind: Str, symbol: "pb_Number", suffix: None, span: #0 bytes(18745..18756) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] AAA
[INFO] [stdout] BBB
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "value_of", span: #0 bytes(18787..18795) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Option", span: #0 bytes(18797..18803) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "ValueOf", span: #0 bytes(18804..18811) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } }
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "Option", span: #0 bytes(18797..18803) }, Ident { ident: "ValueOf", span: #0 bytes(18804..18811) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "value_of", span: #0 bytes(18787..18795) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Option", span: #0 bytes(18797..18803) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "ValueOf", span: #0 bytes(18804..18811) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "value_of", span: #0 bytes(18787..18795) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "value_of", span: #0 bytes(18787..18795) } "m_helper" [Ident { ident: "Option", span: #0 bytes(18797..18803) }, Ident { ident: "ValueOf", span: #0 bytes(18804..18811) }] None None
[INFO] [stdout] get_from_field_quote: Ident { ident: "value_of", span: #0 bytes(18787..18795) } "m_helper" [Ident { ident: "ValueOf", span: #0 bytes(18804..18811) }] Some(Ident { ident: "Option", span: #0 bytes(18797..18803) }) None
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_option_pb_to_option_one"
[INFO] [stdout] get_field_name: Some(Ident { ident: "value_of", span: #0 bytes(18787..18795) })
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_option_one_to_option_pb"
[INFO] [stdout] Enum
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(19869..19871) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(19872..19879) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(19880..19881) }, Literal { kind: Str, symbol: "pb_ValueOf", suffix: None, span: #0 bytes(19882..19894) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(19869..19871) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(19872..19879) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(19880..19881) }, Literal { kind: Str, symbol: "pb_ValueOf", suffix: None, span: #0 bytes(19882..19894) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] new: Ident { ident: "ValueOf", span: #0 bytes(19906..19913) }|Ident { ident: "pb_ValueOf", span: #0 bytes(19906..19913) }|"m_helper"
[INFO] [stdout] dataenum: [Variant { attrs: [], ident: Ident { ident: "Int32Value", span: #0 bytes(19920..19930) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(19931..19934) }, arguments: PathArguments::None }] } } }] }, discriminant: None }, Comma, Variant { attrs: [], ident: Ident { ident: "Int64Value", span: #0 bytes(19941..19951) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i64", span: #0 bytes(19952..19955) }, arguments: PathArguments::None }] } } }] }, discriminant: None }, Comma, Variant { attrs: [], ident: Ident { ident: "FloatValue", span: #0 bytes(19962..19972) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "f32", span: #0 bytes(19973..19976) }, arguments: PathArguments::None }] } } }] }, discriminant: None }, Comma, Variant { attrs: [], ident: Ident { ident: "DoubleValue", span: #0 bytes(19983..19994) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "f64", span: #0 bytes(19995..19998) }, arguments: PathArguments::None }] } } }] }, discriminant: None }, Comma]
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Int32Value", span: #0 bytes(19920..19930) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i32", span: #0 bytes(19931..19934) }, arguments: PathArguments::None }] } } }] }, discriminant: None }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Int64Value", span: #0 bytes(19941..19951) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "i64", span: #0 bytes(19952..19955) }, arguments: PathArguments::None }] } } }] }, discriminant: None }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "FloatValue", span: #0 bytes(19962..19972) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "f32", span: #0 bytes(19973..19976) }, arguments: PathArguments::None }] } } }] }, discriminant: None }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "DoubleValue", span: #0 bytes(19983..19994) }, fields: Fields::Unnamed { paren_token: Paren, unnamed: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: None, colon_token: None, ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "f64", span: #0 bytes(19995..19998) }, arguments: PathArguments::None }] } } }] }, discriminant: None }
[INFO] [stdout] FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] "Int32Value"
[INFO] [stdout] []
[INFO] [stdout] "Int64Value"
[INFO] [stdout] []
[INFO] [stdout] "FloatValue"
[INFO] [stdout] []
[INFO] [stdout] "DoubleValue"
[INFO] [stdout] []
[INFO] [stdout] struct
[INFO] [stdout] 1
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(23344..23346) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(23352..23359) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(23360..23361) }, Literal { kind: Str, symbol: "pb_Uuid", suffix: None, span: #0 bytes(23362..23371) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(23371..23372) }, Ident { ident: "module_path", span: #0 bytes(23377..23388) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(23389..23390) }, Literal { kind: Str, symbol: "super::super::super::pb", suffix: None, span: #0 bytes(23391..23416) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(23416..23417) }, Ident { ident: "trait_path", span: #0 bytes(23422..23432) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(23433..23434) }, Literal { kind: Str, symbol: "super::super::super::pb", suffix: None, span: #0 bytes(23435..23460) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(23344..23346) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(23352..23359) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(23360..23361) }, Literal { kind: Str, symbol: "pb_Uuid", suffix: None, span: #0 bytes(23362..23371) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(23371..23372) }, Ident { ident: "module_path", span: #0 bytes(23377..23388) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(23389..23390) }, Literal { kind: Str, symbol: "super::super::super::pb", suffix: None, span: #0 bytes(23391..23416) }, Punct { ch: ',', spacing: Alone, span: #0 bytes(23416..23417) }, Ident { ident: "trait_path", span: #0 bytes(23422..23432) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(23433..23434) }, Literal { kind: Str, symbol: "super::super::super::pb", suffix: None, span: #0 bytes(23435..23460) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] AAA
[INFO] [stdout] BBB
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "uuid_value", span: #0 bytes(23490..23500) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Vec", span: #0 bytes(23502..23505) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "u8", span: #0 bytes(23506..23508) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } }
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "Vec", span: #0 bytes(23502..23505) }, Ident { ident: "u8", span: #0 bytes(23506..23508) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "uuid_value", span: #0 bytes(23490..23500) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Vec", span: #0 bytes(23502..23505) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "u8", span: #0 bytes(23506..23508) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "uuid_value", span: #0 bytes(23490..23500) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "uuid_value", span: #0 bytes(23490..23500) } "super::super::super::pb" [Ident { ident: "Vec", span: #0 bytes(23502..23505) }, Ident { ident: "u8", span: #0 bytes(23506..23508) }] None None
[INFO] [stdout] get_from_field_quote: Ident { ident: "uuid_value", span: #0 bytes(23490..23500) } "super::super::super::pb" [Ident { ident: "u8", span: #0 bytes(23506..23508) }] Some(Ident { ident: "Vec", span: #0 bytes(23502..23505) }) None
[INFO] [stdout] get_field_name: Some(Ident { ident: "uuid_value", span: #0 bytes(23490..23500) })
[INFO] [stdout] struct
[INFO] [stdout] 1
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(61562..61564) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(61565..61572) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(61573..61574) }, Literal { kind: Str, symbol: "pb_ArrayValue", suffix: None, span: #0 bytes(61575..61590) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(61562..61564) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(61565..61572) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(61573..61574) }, Literal { kind: Str, symbol: "pb_ArrayValue", suffix: None, span: #0 bytes(61575..61590) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] AAA
[INFO] [stdout] BBB
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "values", span: #0 bytes(61625..61631) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Vec", span: #0 bytes(61633..61636) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Value", span: #0 bytes(61637..61642) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } }
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "Vec", span: #0 bytes(61633..61636) }, Ident { ident: "Value", span: #0 bytes(61637..61642) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "values", span: #0 bytes(61625..61631) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Vec", span: #0 bytes(61633..61636) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Value", span: #0 bytes(61637..61642) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "values", span: #0 bytes(61625..61631) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "values", span: #0 bytes(61625..61631) } "m_helper" [Ident { ident: "Vec", span: #0 bytes(61633..61636) }, Ident { ident: "Value", span: #0 bytes(61637..61642) }] None None
[INFO] [stdout] get_from_field_quote: Ident { ident: "values", span: #0 bytes(61625..61631) } "m_helper" [Ident { ident: "Value", span: #0 bytes(61637..61642) }] Some(Ident { ident: "Vec", span: #0 bytes(61633..61636) }) None
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_pb_multi_to_multi"
[INFO] [stdout] get_field_name: Some(Ident { ident: "values", span: #0 bytes(61625..61631) })
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_multi_to_multi_pb"
[INFO] [stdout] Enum
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(64290..64292) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(64293..64300) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(64301..64302) }, Literal { kind: Str, symbol: "pb_ValueType", suffix: None, span: #0 bytes(64303..64317) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(64290..64292) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(64293..64300) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(64301..64302) }, Literal { kind: Str, symbol: "pb_ValueType", suffix: None, span: #0 bytes(64303..64317) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "repr", span: #0 bytes(64322..64326) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "i32", span: #0 bytes(64327..64330) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "repr", span: #0 bytes(64322..64326) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "i32", span: #0 bytes(64327..64330) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] new: Ident { ident: "ValueType", span: #0 bytes(64342..64351) }|Ident { ident: "pb_ValueType", span: #0 bytes(64342..64351) }|"m_helper"
[INFO] [stdout] dataenum: [Variant { attrs: [], ident: Ident { ident: "Unknown", span: #0 bytes(64358..64365) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 0 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "Bool", span: #0 bytes(64375..64379) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 1 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "String", span: #0 bytes(64389..64395) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 2 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "Bytes", span: #0 bytes(64405..64410) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 3 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "Uuid", span: #0 bytes(64420..64424) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 4 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "Number", span: #0 bytes(64434..64440) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 5 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "Datetime", span: #0 bytes(64450..64458) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 6 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "Date", span: #0 bytes(64468..64472) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 7 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "DateRange", span: #0 bytes(64482..64491) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 8 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "ArrayValues", span: #0 bytes(64501..64512) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 10 } })) }, Comma]
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Unknown", span: #0 bytes(64358..64365) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 0 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Bool", span: #0 bytes(64375..64379) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 1 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "String", span: #0 bytes(64389..64395) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 2 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Bytes", span: #0 bytes(64405..64410) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 3 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Uuid", span: #0 bytes(64420..64424) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 4 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Number", span: #0 bytes(64434..64440) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 5 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Datetime", span: #0 bytes(64450..64458) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 6 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Date", span: #0 bytes(64468..64472) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 7 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "DateRange", span: #0 bytes(64482..64491) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 8 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "ArrayValues", span: #0 bytes(64501..64512) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 10 } })) }
[INFO] [stdout] FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] "Unknown"
[INFO] [stdout] []
[INFO] [stdout] "Bool"
[INFO] [stdout] []
[INFO] [stdout] "String"
[INFO] [stdout] []
[INFO] [stdout] "Bytes"
[INFO] [stdout] []
[INFO] [stdout] "Uuid"
[INFO] [stdout] []
[INFO] [stdout] "Number"
[INFO] [stdout] []
[INFO] [stdout] "Datetime"
[INFO] [stdout] []
[INFO] [stdout] "Date"
[INFO] [stdout] []
[INFO] [stdout] "DateRange"
[INFO] [stdout] []
[INFO] [stdout] "ArrayValues"
[INFO] [stdout] []
[INFO] [stdout] variant: Ident { ident: "Unknown", span: #0 bytes(64358..64365) } | LitInt { token: 0 }
[INFO] [stdout] variant: Ident { ident: "Bool", span: #0 bytes(64375..64379) } | LitInt { token: 1 }
[INFO] [stdout] variant: Ident { ident: "String", span: #0 bytes(64389..64395) } | LitInt { token: 2 }
[INFO] [stdout] variant: Ident { ident: "Bytes", span: #0 bytes(64405..64410) } | LitInt { token: 3 }
[INFO] [stdout] variant: Ident { ident: "Uuid", span: #0 bytes(64420..64424) } | LitInt { token: 4 }
[INFO] [stdout] variant: Ident { ident: "Number", span: #0 bytes(64434..64440) } | LitInt { token: 5 }
[INFO] [stdout] variant: Ident { ident: "Datetime", span: #0 bytes(64450..64458) } | LitInt { token: 6 }
[INFO] [stdout] variant: Ident { ident: "Date", span: #0 bytes(64468..64472) } | LitInt { token: 7 }
[INFO] [stdout] variant: Ident { ident: "DateRange", span: #0 bytes(64482..64491) } | LitInt { token: 8 }
[INFO] [stdout] variant: Ident { ident: "ArrayValues", span: #0 bytes(64501..64512) } | LitInt { token: 10 }
[INFO] [stdout] variant: Ident { ident: "Unknown", span: #0 bytes(64358..64365) } | LitInt { token: 0 }
[INFO] [stdout] variant: Ident { ident: "Bool", span: #0 bytes(64375..64379) } | LitInt { token: 1 }
[INFO] [stdout] variant: Ident { ident: "String", span: #0 bytes(64389..64395) } | LitInt { token: 2 }
[INFO] [stdout] variant: Ident { ident: "Bytes", span: #0 bytes(64405..64410) } | LitInt { token: 3 }
[INFO] [stdout] variant: Ident { ident: "Uuid", span: #0 bytes(64420..64424) } | LitInt { token: 4 }
[INFO] [stdout] variant: Ident { ident: "Number", span: #0 bytes(64434..64440) } | LitInt { token: 5 }
[INFO] [stdout] variant: Ident { ident: "Datetime", span: #0 bytes(64450..64458) } | LitInt { token: 6 }
[INFO] [stdout] variant: Ident { ident: "Date", span: #0 bytes(64468..64472) } | LitInt { token: 7 }
[INFO] [stdout] variant: Ident { ident: "DateRange", span: #0 bytes(64482..64491) } | LitInt { token: 8 }
[INFO] [stdout] variant: Ident { ident: "ArrayValues", span: #0 bytes(64501..64512) } | LitInt { token: 10 }
[INFO] [stdout] struct
[INFO] [stdout] 1
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(61562..61564) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(61565..61572) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(61573..61574) }, Literal { kind: Str, symbol: "pb_ArrayValue", suffix: None, span: #0 bytes(61575..61590) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(61562..61564) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(61565..61572) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(61573..61574) }, Literal { kind: Str, symbol: "pb_ArrayValue", suffix: None, span: #0 bytes(61575..61590) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] AAA
[INFO] [stdout] BBB
[INFO] [stdout] field_meta_map: FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] FieldAttr: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "values", span: #0 bytes(61625..61631) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Vec", span: #0 bytes(61633..61636) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Value", span: #0 bytes(61637..61642) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } }
[INFO] [stdout] get_from_pb_fields: FieldAttr { is_skip: false, type_vec: [Ident { ident: "Vec", span: #0 bytes(61633..61636) }, Ident { ident: "Value", span: #0 bytes(61637..61642) }], from_pb_func_name: None, to_pb_func_name: None, field: Field { attrs: [], vis: Visibility::Public(Pub), mutability: FieldMutability::None, ident: Some(Ident { ident: "values", span: #0 bytes(61625..61631) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Vec", span: #0 bytes(61633..61636) }, arguments: PathArguments::AngleBracketed { colon2_token: None, lt_token: Lt, args: [GenericArgument::Type(Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "Value", span: #0 bytes(61637..61642) }, arguments: PathArguments::None }] } })], gt_token: Gt } }] } } } }
[INFO] [stdout] get_field_name: Some(Ident { ident: "values", span: #0 bytes(61625..61631) })
[INFO] [stdout] get_from_field_quote: Ident { ident: "values", span: #0 bytes(61625..61631) } "m_helper" [Ident { ident: "Vec", span: #0 bytes(61633..61636) }, Ident { ident: "Value", span: #0 bytes(61637..61642) }] None None
[INFO] [stdout] get_from_field_quote: Ident { ident: "values", span: #0 bytes(61625..61631) } "m_helper" [Ident { ident: "Value", span: #0 bytes(61637..61642) }] Some(Ident { ident: "Vec", span: #0 bytes(61633..61636) }) None
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_pb_multi_to_multi"
[INFO] [stdout] get_field_name: Some(Ident { ident: "values", span: #0 bytes(61625..61631) })
[INFO] [stdout] get_custom_func_ident: "m_helper::conv_multi_to_multi_pb"
[INFO] [stdout] Enum
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(64290..64292) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(64293..64300) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(64301..64302) }, Literal { kind: Str, symbol: "pb_ValueType", suffix: None, span: #0 bytes(64303..64317) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "pb", span: #0 bytes(64290..64292) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "pb_name", span: #0 bytes(64293..64300) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(64301..64302) }, Literal { kind: Str, symbol: "pb_ValueType", suffix: None, span: #0 bytes(64303..64317) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "repr", span: #0 bytes(64322..64326) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "i32", span: #0 bytes(64327..64330) }] } }
[INFO] [stdout] attr: Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "repr", span: #0 bytes(64322..64326) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "i32", span: #0 bytes(64327..64330) }] } }
[INFO] [stdout] A
[INFO] [stdout] B
[INFO] [stdout] new: Ident { ident: "ValueType", span: #0 bytes(64342..64351) }|Ident { ident: "pb_ValueType", span: #0 bytes(64342..64351) }|"m_helper"
[INFO] [stdout] dataenum: [Variant { attrs: [], ident: Ident { ident: "Unknown", span: #0 bytes(64358..64365) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 0 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "Bool", span: #0 bytes(64375..64379) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 1 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "String", span: #0 bytes(64389..64395) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 2 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "Bytes", span: #0 bytes(64405..64410) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 3 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "Uuid", span: #0 bytes(64420..64424) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 4 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "Number", span: #0 bytes(64434..64440) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 5 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "Datetime", span: #0 bytes(64450..64458) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 6 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "Date", span: #0 bytes(64468..64472) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 7 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "DateRange", span: #0 bytes(64482..64491) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 8 } })) }, Comma, Variant { attrs: [], ident: Ident { ident: "ArrayValues", span: #0 bytes(64501..64512) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 10 } })) }, Comma]
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Unknown", span: #0 bytes(64358..64365) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 0 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Bool", span: #0 bytes(64375..64379) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 1 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "String", span: #0 bytes(64389..64395) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 2 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Bytes", span: #0 bytes(64405..64410) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 3 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Uuid", span: #0 bytes(64420..64424) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 4 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Number", span: #0 bytes(64434..64440) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 5 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Datetime", span: #0 bytes(64450..64458) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 6 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "Date", span: #0 bytes(64468..64472) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 7 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "DateRange", span: #0 bytes(64482..64491) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 8 } })) }
[INFO] [stdout] Variant { attrs: [], ident: Ident { ident: "ArrayValues", span: #0 bytes(64501..64512) }, fields: Fields::Unit, discriminant: Some((Eq, Expr::Lit { attrs: [], lit: Lit::Int { token: 10 } })) }
[INFO] [stdout] FieldMetaMap { field_meta_map: {} }
[INFO] [stdout] "Unknown"
[INFO] [stdout] []
[INFO] [stdout] "Bool"
[INFO] [stdout] []
[INFO] [stdout] "String"
[INFO] [stdout] []
[INFO] [stdout] "Bytes"
[INFO] [stdout] []
[INFO] [stdout] "Uuid"
[INFO] [stdout] []
[INFO] [stdout] "Number"
[INFO] [stdout] []
[INFO] [stdout] "Datetime"
[INFO] [stdout] []
[INFO] [stdout] "Date"
[INFO] [stdout] []
[INFO] [stdout] "DateRange"
[INFO] [stdout] []
[INFO] [stdout] "ArrayValues"
[INFO] [stdout] []
[INFO] [stdout] variant: Ident { ident: "Unknown", span: #0 bytes(64358..64365) } | LitInt { token: 0 }
[INFO] [stdout] variant: Ident { ident: "Bool", span: #0 bytes(64375..64379) } | LitInt { token: 1 }
[INFO] [stdout] variant: Ident { ident: "String", span: #0 bytes(64389..64395) } | LitInt { token: 2 }
[INFO] [stdout] variant: Ident { ident: "Bytes", span: #0 bytes(64405..64410) } | LitInt { token: 3 }
[INFO] [stdout] variant: Ident { ident: "Uuid", span: #0 bytes(64420..64424) } | LitInt { token: 4 }
[INFO] [stdout] variant: Ident { ident: "Number", span: #0 bytes(64434..64440) } | LitInt { token: 5 }
[INFO] [stdout] variant: Ident { ident: "Datetime", span: #0 bytes(64450..64458) } | LitInt { token: 6 }
[INFO] [stdout] variant: Ident { ident: "Date", span: #0 bytes(64468..64472) } | LitInt { token: 7 }
[INFO] [stdout] variant: Ident { ident: "DateRange", span: #0 bytes(64482..64491) } | LitInt { token: 8 }
[INFO] [stdout] variant: Ident { ident: "ArrayValues", span: #0 bytes(64501..64512) } | LitInt { token: 10 }
[INFO] [stdout] variant: Ident { ident: "Unknown", span: #0 bytes(64358..64365) } | LitInt { token: 0 }
[INFO] [stdout] variant: Ident { ident: "Bool", span: #0 bytes(64375..64379) } | LitInt { token: 1 }
[INFO] [stdout] variant: Ident { ident: "String", span: #0 bytes(64389..64395) } | LitInt { token: 2 }
[INFO] [stdout] variant: Ident { ident: "Bytes", span: #0 bytes(64405..64410) } | LitInt { token: 3 }
[INFO] [stdout] variant: Ident { ident: "Uuid", span: #0 bytes(64420..64424) } | LitInt { token: 4 }
[INFO] [stdout] variant: Ident { ident: "Number", span: #0 bytes(64434..64440) } | LitInt { token: 5 }
[INFO] [stdout] variant: Ident { ident: "Datetime", span: #0 bytes(64450..64458) } | LitInt { token: 6 }
[INFO] [stdout] variant: Ident { ident: "Date", span: #0 bytes(64468..64472) } | LitInt { token: 7 }
[INFO] [stdout] variant: Ident { ident: "DateRange", span: #0 bytes(64482..64491) } | LitInt { token: 8 }
[INFO] [stdout] variant: Ident { ident: "ArrayValues", span: #0 bytes(64501..64512) } | LitInt { token: 10 }
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/typ_p/value.rs:293:9
[INFO] [stdout]     |
[INFO] [stdout] 293 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::typ_p::Value`
[INFO] [stdout]  --> src/typ_p/hashmap.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::typ_p::Value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::typ_p::Value`
[INFO] [stdout]  --> src/typ_p/vec.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::typ_p::Value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::typ_p::Value`
[INFO] [stdout]  --> src/typ_p/hashmap.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::typ_p::Value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::typ_p::Value`
[INFO] [stdout]  --> src/typ_p/vec.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::typ_p::Value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<i32, Infallible>
[INFO] [stdout]    --> src/typ_p/date.rs:195:13
[INFO] [stdout]     |
[INFO] [stdout] 195 |             y.try_into().unwrap(),
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<u32, Infallible>
[INFO] [stdout]    --> src/typ_p/date.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |             m.try_into().unwrap(),
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<u32, Infallible>
[INFO] [stdout]    --> src/typ_p/date.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |             d.try_into().unwrap(),
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `typ-p` (lib) due to 3 previous errors; 2 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<i32, Infallible>
[INFO] [stdout]    --> src/typ_p/date.rs:195:13
[INFO] [stdout]     |
[INFO] [stdout] 195 |             y.try_into().unwrap(),
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<u32, Infallible>
[INFO] [stdout]    --> src/typ_p/date.rs:196:13
[INFO] [stdout]     |
[INFO] [stdout] 196 |             m.try_into().unwrap(),
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<u32, Infallible>
[INFO] [stdout]    --> src/typ_p/date.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |             d.try_into().unwrap(),
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `typ-p` (lib test) due to 3 previous errors; 3 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "8195956a1c2b20e56245ed4ca058505f41b250f32ef8b737c8970e6ec22238e4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8195956a1c2b20e56245ed4ca058505f41b250f32ef8b737c8970e6ec22238e4", kill_on_drop: false }`
[INFO] [stdout] 8195956a1c2b20e56245ed4ca058505f41b250f32ef8b737c8970e6ec22238e4
