AsnDecoder.TryReadPrimitiveBitString Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Attempts to get a Bit String value from source
with a specified tag under the specified encoding rules, if the value is contained in a single (primitive) encoding.
public static bool TryReadPrimitiveBitString (ReadOnlySpan<byte> source, System.Formats.Asn1.AsnEncodingRules ruleSet, out int unusedBitCount, out ReadOnlySpan<byte> value, out int bytesConsumed, System.Formats.Asn1.Asn1Tag? expectedTag = default);
static member TryReadPrimitiveBitString : ReadOnlySpan<byte> * System.Formats.Asn1.AsnEncodingRules * int * ReadOnlySpan * int * Nullable<System.Formats.Asn1.Asn1Tag> -> bool
Public Shared Function TryReadPrimitiveBitString (source As ReadOnlySpan(Of Byte), ruleSet As AsnEncodingRules, ByRef unusedBitCount As Integer, ByRef value As ReadOnlySpan(Of Byte), ByRef bytesConsumed As Integer, Optional expectedTag As Nullable(Of Asn1Tag) = Nothing) As Boolean
Parameters
- source
- ReadOnlySpan<Byte>
The buffer containing encoded data.
- ruleSet
- AsnEncodingRules
The encoding constraints to use when interpreting the data.
- unusedBitCount
- Int32
On success, receives the number of bits in the last byte which were reported as "unused" by the writer. This parameter is treated as uninitialized.
- value
- ReadOnlySpan<Byte>
On success, receives a slice of the input buffer that corresponds to the value of the Bit String. This parameter is treated as uninitialized.
- bytesConsumed
- Int32
When this method returns, the total number of bytes for the encoded value. This parameter is treated as uninitialized.
The tag to check for before reading, or null
for the default tag (Universal 3).
Returns
true
if the Bit String value has a primitive encoding and all of the bits reported as unused are set to 0; otherwise, false
.
Exceptions
ruleSet
is not defined.
The next value does not have the correct tag.
-or-
The length encoding is not valid under the current encoding rules.
-or-
The contents are not valid under the current encoding rules.