Enumerated type¶
-
class
pyasn1.type.univ.
Enumerated
(value=NoValue(), tagSet=TagSet(), subtypeSpec=ConstraintsIntersection(), namedValues=NamedValues())¶ Create Enumerated type or object.
Enumerated objects are immutable and duck-type Python
int
objects.Parameters: - value (
int
,str
or Enumerated object) – Python integer or string literal or Enumerated class instance. - 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
Raises: : :py:class:`pyasn1.error.PyAsn1Error` – On constraint violation or bad initializer.
Note
The Enumerated type models bounded set of named integer values. Other than that, it is identical to the Integer class.
-
clone
(value=NoValue(), tagSet=TagSet(), subtypeSpec=ConstraintsIntersection(), namedValues=NamedValues())¶ Create a copy of a Enumerated type or object.
Any parameters to the clone() method will replace corresponding properties of the Enumerated object.
Parameters: - value (
int
,str
or Enumerated 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
) – Object representing symbolic aliases for numbers to use instead of inheriting from caller
Returns: new instance of Enumerated type/value
- value (
-
subtype
(value=NoValue(), implicitTag=Tag(), explicitTag=Tag(), subtypeSpec=ConstraintsIntersection(), namedValues=NamedValues())¶ Create a copy of a Enumerated type or object.
Any parameters to the subtype() method will be added to the corresponding properties of the Enumerated object.
Parameters: - value (
int
,str
or Enumerated 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.
Returns: new instance of Enumerated type/value
- value (
-
tagSet
= TagSet((), Tag(tagClass=0, tagFormat=0, tagId=10))¶ Default
TagSet
object for Enumerated objects
-
subtypeSpec
= ConstraintsIntersection()¶ Default
ConstraintsIntersection
object imposing constraints on initialization values.
-
namedValues
= NamedValues()¶ Default
NamedValues
object representing symbolic aliases for numbers
-
hasValue
()¶ Indicate if Enumerated 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 Enumerated 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 Enumerated type,False
otherwise.
-
isSuperTypeOf
(other, matchTags=True, matchConstraints=True)¶ Examine Enumerated 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 Enumerated type,False
otherwise.
- value (