pub open spec fn spec_btc_varint_inner() -> TryMap<SpecPair<U8, Choice<Cond<Fixed<0>>, Choice<Cond<Refined<U16Le, PredU16LeFit>>, Choice<Cond<Refined<U32Le, PredU32LeFit>>, Cond<Refined<U64Le, PredU64LeFit>>>>>>, VarIntMapper>Expand description
{
TryMap {
inner: Pair::spec_new(
U8,
|t: u8| {
ord_choice!(
Cond { cond : t <= 0xFC, inner : Fixed::< 0 > }, Cond { cond : t ==
SPEC_TAG_U16, inner : Refined { inner : U16Le, predicate :
PredU16LeFit } }, Cond { cond : t == SPEC_TAG_U32, inner : Refined {
inner : U32Le, predicate : PredU32LeFit } }, Cond { cond : t ==
SPEC_TAG_U64, inner : Refined { inner : U64Le, predicate :
PredU64LeFit } },
)
},
),
mapper: VarIntMapper,
}
}Inner Spec combinator for parsing and serializing Bitcoin variable-length integers