Module macros

Source

Macros§

asn1
Allows multiple definitions involving SEQUENCE, SEQUENCE OF, SET OF, and CHOICE
asn1_choice
Generate a combinator for an ASN.1 CHOICE
asn1_sequence
Generate a combinator for an ASN.1 SEQUENCE (with default or optional fields)
asn1_sequence_of
Generate a combinator for an ASN.1 SEQUENCE OF
asn1_set_of
Same as above, but for SET OF
gen_backward_body
gen_choice_backward
Given variants, generate if let branches to transform $src to a nested Either term if let variant1(p) = x { inj_ord_choice_result!(…) } else if let variant2(p) = x { … } …
gen_choice_backward_branches
gen_choice_forward
Given variants, generate if let branches to transform $src from a nested Either term to a specific variant
gen_choice_forward_branches
gen_choice_last_field_pat
Generate inj_ord_choice_pat!(*, …, *, p) with |$variant| stars before p
gen_field_poly_type
gen_forward_body
gen_inner_combinator
gen_inner_combinator_poly_result_type
gen_inner_combinator_type
gen_inner_combinator_type!((optional, type1); (, type2); (default(v), type3))
gen_match_continuation_apply
gen_match_continuation_apply_helper
gen_match_continuation_spec_apply
gen_match_continuation_spec_apply_helper
get_end_field
match_continuation
Generate a continuation that matches the input against a set of values and for each value, the result is parsed with different a combinator and stored in the suitable variant.
oid_match_continuation
Special case for matching against OIDs