Represents the result of reading one specific property as part of a Read Property Multiple response.
The structure can hold either a successful property value (which may be a single encoding or a list of encodings when the property is an array) or a BACnetError if that particular property could not be read. The property_identifier and optional array index identify exactly which property the result corresponds to.
This per-property success-or-error granularity is what allows Read Property Multiple to return useful information even when some of the requested properties are invalid or temporarily unavailable.
Summary
Types
The result of reading one property as part of a Read Property Multiple response (value or error).
Functions
Encodes a BACnet Read Access Result Read Result into BACnet application tags encoding.
Parses a BACnet Read Access Result Read Result from BACnet application tags encoding.
Validates whether the given read access read result is in form valid.
Types
@type t() :: %BACnet.Protocol.ReadAccessResult.ReadResult{ error: BACnet.Protocol.BACnetError.t() | nil, property_array_index: non_neg_integer() | nil, property_identifier: BACnet.Protocol.Constants.property_identifier() | non_neg_integer(), property_value: BACnet.Protocol.ApplicationTags.Encoding.t() | [BACnet.Protocol.ApplicationTags.Encoding.t()] | nil }
The result of reading one property as part of a Read Property Multiple response (value or error).
Functions
@spec encode(t(), Keyword.t()) :: {:ok, BACnet.Protocol.ApplicationTags.encoding_list()} | {:error, term()}
Encodes a BACnet Read Access Result Read Result into BACnet application tags encoding.
@spec parse(BACnet.Protocol.ApplicationTags.encoding_list()) :: {:ok, {t(), rest :: BACnet.Protocol.ApplicationTags.encoding_list()}} | {:error, term()}
Parses a BACnet Read Access Result Read Result from BACnet application tags encoding.
Validates whether the given read access read result is in form valid.
It only validates the struct is valid as per type specification.