BitString type¶
-
class
pyasn1.type.univ.
BitString
(value=NoValue(), tagSet=TagSet(), subtypeSpec=ConstraintsIntersection(), namedValues=NamedValues(), binValue=NoValue(), hexValue=NoValue())¶ Create BitString type or object.
BitString objects are immutable and duck-type both Python
tuple
(as a tuple of bits) andint
objects.Parameters: - value (
int
,str
or BitString object) – Python integer or string literal representing binary or hexadecimal number or sequence of integer bits or BitString object. - tagSet (
TagSet
) – Object representing non-default ASN.1 tag(s) - subtypeSpec (
ConstraintsIntersection
) – Object representing non-default ASN.1 subtype constraint(s) - namedValues (
NamedValues
) – Object representing non-default symbolic aliases for numbers - binValue (
str
) – Binary string initializer to use instead of the value. Example: ‘10110011’. - hexValue (
str
) – Hexadecimal string initializer to use instead of the value. Example: ‘DEADBEEF’.
Raises: : :py:class:`pyasn1.error.PyAsn1Error` – On constraint violation or bad initializer.
Note
The BitString type models an arbitrary sequence of bits.
-
clone
(value=NoValue(), tagSet=TagSet(), subtypeSpec=ConstraintsIntersection(), namedValues=NamedValues(), binValue=NoValue(), hexValue=NoValue())¶ Create a copy of a BitString type or object.
Any parameters to the clone() method will replace corresponding properties of the BitString object.
Parameters: - value (
int
,str
or BitString object) – Initialization value to pass to new ASN.1 object instead of inheriting one from the caller. - tagSet (
TagSet
) – Object representing ASN.1 tag(s) to use in new object instead of inheriting from the caller - subtypeSpec (
ConstraintsIntersection
) – Object representing ASN.1 subtype constraint(s) to use in new object instead of inheriting from the caller - namedValues (
NamedValues
) – Class instance representing BitString type enumerations - binValue (
str
) – Binary string initializer to use instead of the value. Example: ‘10110011’. - hexValue (
str
) – Hexadecimal string initializer to use instead of the value. Example: ‘DEADBEEF’.
Returns: new instance of BitString type/value
- value (
-
subtype
(value=NoValue(), implicitTag=Tag(), explicitTag=Tag(), subtypeSpec=ConstraintsIntersection(), namedValues=NamedValues(), binValue=NoValue(), hexValue=NoValue())¶ Create a copy of a BitString type or object.
Any parameters to the subtype() method will be added to the corresponding properties of the BitString object.
Parameters: - value (
int
,str
or BitString object) – Initialization value to pass to new ASN.1 object instead of inheriting one from the caller. - implicitTag (
Tag
) – Implicitly apply given ASN.1 tag object to caller’sTagSet
, then use the result as new object’s ASN.1 tag(s). - explicitTag (
Tag
) – Explicitly apply given ASN.1 tag object to caller’sTagSet
, then use the result as new object’s ASN.1 tag(s). - subtypeSpec (
ConstraintsIntersection
) – Add ASN.1 constraints object to one of the caller, then use the result as new object’s ASN.1 constraints. - namedValues (
NamedValues
) – Add given object representing symbolic aliases for numbers to one of the caller, then use the result as new object’s named numbers. - binValue (
str
) – Binary string initializer to use instead of the value. Example: ‘10110011’. - hexValue (
str
) – Hexadecimal string initializer to use instead of the value. Example: ‘DEADBEEF’.
Returns: new instance of BitString type/value
- value (
-
tagSet
= TagSet((), Tag(tagClass=0, tagFormat=0, tagId=3))¶ Default
TagSet
object for BitString objects
-
subtypeSpec
= ConstraintsIntersection()¶ Default
ConstraintsIntersection
object imposing constraints on initialization values.
-
asNumbers
()¶ Get BitString value as a sequence of 8-bit integers.
If BitString object length is not a multiple of 8, result will be left-padded with zeros.
-
asOctets
()¶ Get BitString value as a sequence of octets.
If BitString object length is not a multiple of 8, result will be left-padded with zeros.
-
asInteger
()¶ Get BitString value as a single integer value.
-
asBinary
()¶ Get BitString value as a text string of bits.
-
hasValue
()¶ Indicate if BitString object represents ASN.1 value or ASN.1 type.
The PyASN1 type objects can only participate in types comparison and serve as a blueprint for serialization codecs to resolve ambiguous types.
The PyASN1 value objects can additionally participate to most of built-in Python operations.
Returns: bool
–True
if object is ASN.1 value,False
otherwise.
-
isSameTypeWith
(other, matchTags=True, matchConstraints=True)¶ Examine BitString type for equality with other ASN.1 type.
ASN.1 tags (
tag
) and constraints (constraint
) are examined when carrying out ASN.1 types comparison.No Python inheritance relationship between PyASN1 objects is considered.
Parameters: other (a pyasn1 type object) – Class instance representing ASN.1 type. Returns: bool
–True
if other is BitString type,False
otherwise.
-
isSuperTypeOf
(other, matchTags=True, matchConstraints=True)¶ Examine BitString type for subtype relationship with other ASN.1 type.
ASN.1 tags (
tag
) and constraints (constraint
) are examined when carrying out ASN.1 types comparison.No Python inheritance relationship between PyASN1 objects is considered.
Parameters: other (a pyasn1 type object) – Class instance representing ASN.1 type. Returns: bool
–True
if other is a subtype of BitString type,False
otherwise.
- value (