use bitvec::prelude::*;
#[allow(unused)]
use crate::per::common::decode::*;
use crate::{PerCodecData, PerCodecError};
pub fn decode_choice_idx(
data: &mut PerCodecData,
lb: i128,
ub: i128,
is_extensible: bool,
) -> Result<(i128, bool), PerCodecError> {
decode_choice_idx_common(data, lb, ub, is_extensible, false)
}
pub fn decode_sequence_header(
data: &mut PerCodecData,
is_extensible: bool,
optional_count: usize,
) -> Result<(BitVec<u8, Msb0>, bool), PerCodecError> {
decode_sequence_header_common(data, is_extensible, optional_count, false)
}
pub fn decode_integer(
data: &mut PerCodecData,
lb: Option<i128>,
ub: Option<i128>,
is_extensible: bool,
) -> Result<(i128, bool), PerCodecError> {
decode_integer_common(data, lb, ub, is_extensible, false)
}
pub fn decode_bool(data: &mut PerCodecData) -> Result<bool, PerCodecError> {
decode_bool_common(data, false)
}
pub fn decode_enumerated(
data: &mut PerCodecData,
lb: Option<i128>,
ub: Option<i128>,
is_extensible: bool,
) -> Result<(i128, bool), PerCodecError> {
decode_enumerated_common(data, lb, ub, is_extensible, false)
}
pub fn decode_bitstring(
data: &mut PerCodecData,
lb: Option<i128>,
ub: Option<i128>,
is_extensible: bool,
) -> Result<BitVec<u8, Msb0>, PerCodecError> {
decode_bitstring_common(data, lb, ub, is_extensible, false)
}
pub fn decode_octetstring(
data: &mut PerCodecData,
lb: Option<i128>,
ub: Option<i128>,
is_extensible: bool,
) -> Result<Vec<u8>, PerCodecError> {
decode_octetstring_common(data, lb, ub, is_extensible, false)
}
pub fn decode_length_determinent(
data: &mut PerCodecData,
lb: Option<i128>,
ub: Option<i128>,
normally_small: bool,
) -> Result<usize, PerCodecError> {
decode_length_determinent_common(data, lb, ub, normally_small, false)
}
mod decode_charstrings;
pub use decode_charstrings::*;