Skip to main content

decode_application_value

Function decode_application_value 

Source
pub fn decode_application_value(
    data: &[u8],
    offset: usize,
) -> Result<(PropertyValue, usize), Error>
Expand description

Decode a single application-tagged value from data at offset.

A leading context-tagged element decodes to PropertyValue::ApplicationData holding the complete tagged element verbatim (tag header(s) through the matching closing tag for constructed elements) — such bytes belong to a context-tagged ASN.1 production (e.g. BACnetEventParameter) whose property-level framed codec must interpret them. Application-tagged content is decoded into the typed variants as before.

Errors follow the rule of constructed::tagged: a fixed-size value (REAL, Double, Date, Time, object identifier) whose header gives another length is Error::Decoding, and contents that run past the end of data are Error::BufferTooShort.

Returns the decoded PropertyValue and the new offset past the consumed bytes.