Skip to content

Add missing tagMap & typeMap in pyasn1 encoder/decoder #9471

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions stubs/pyasn1/pyasn1/codec/ber/decoder.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -317,6 +317,9 @@ class GeneralizedTimeDecoder(OctetStringDecoder):
class UTCTimeDecoder(OctetStringDecoder):
protoComponent: useful.UTCTime

tagMap: dict[TagSet, AbstractDecoder]
typeMap: dict[int, AbstractDecoder]

class Decoder:
defaultErrorState: int
defaultRawDecoder: AnyDecoder
Expand Down
4 changes: 4 additions & 0 deletions stubs/pyasn1/pyasn1/codec/ber/encoder.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ from _typeshed import Incomplete
from abc import abstractmethod

from pyasn1.type.base import Asn1Type
from pyasn1.type.tag import TagSet

class AbstractItemEncoder:
supportIndefLenMode: bool
Expand Down Expand Up @@ -58,6 +59,9 @@ class ChoiceEncoder(AbstractItemEncoder):
class AnyEncoder(OctetStringEncoder):
def encodeValue(self, value, asn1Spec, encodeFun, **options): ...

tagMap: dict[TagSet, AbstractItemEncoder]
typeMap: dict[int, AbstractItemEncoder]

class Encoder:
fixedDefLengthMode: bool | None
fixedChunkSize: int | None
Expand Down
3 changes: 3 additions & 0 deletions stubs/pyasn1/pyasn1/codec/cer/decoder.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ BitStringDecoder = decoder.BitStringDecoder
OctetStringDecoder = decoder.OctetStringDecoder
RealDecoder = decoder.RealDecoder

tagMap: dict[TagSet, decoder.AbstractDecoder]
typeMap: dict[int, decoder.AbstractDecoder]

class Decoder(decoder.Decoder): ...

decode: Decoder
4 changes: 4 additions & 0 deletions stubs/pyasn1/pyasn1/codec/cer/encoder.pyi
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
from typing import ClassVar

from pyasn1.codec.ber import encoder
from pyasn1.type.tag import TagSet

class BooleanEncoder(encoder.IntegerEncoder):
def encodeValue(self, value, asn1Spec, encodeFun, **options): ...
Expand Down Expand Up @@ -33,6 +34,9 @@ class SetEncoder(encoder.SequenceEncoder):
class SequenceEncoder(encoder.SequenceEncoder):
omitEmptyOptionals: bool

tagMap: dict[TagSet, encoder.AbstractItemEncoder]
typeMap: dict[int, encoder.AbstractItemEncoder]

class Encoder(encoder.Encoder):
fixedDefLengthMode: bool
fixedChunkSize: int
Expand Down
5 changes: 5 additions & 0 deletions stubs/pyasn1/pyasn1/codec/der/decoder.pyi
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
from pyasn1.codec.ber import decoder as ber_decoder
from pyasn1.codec.cer import decoder
from pyasn1.type.tag import TagSet

class BitStringDecoder(decoder.BitStringDecoder):
supportConstructedForm: bool

class OctetStringDecoder(decoder.OctetStringDecoder):
supportConstructedForm: bool

tagMap: dict[TagSet, ber_decoder.AbstractDecoder]
typeMap: dict[int, ber_decoder.AbstractDecoder]

class Decoder(decoder.Decoder):
supportIndefLength: bool

Expand Down
5 changes: 5 additions & 0 deletions stubs/pyasn1/pyasn1/codec/der/encoder.pyi
Original file line number Diff line number Diff line change
@@ -1,7 +1,12 @@
from pyasn1.codec.ber import encoder as ber_encoder
from pyasn1.codec.cer import encoder
from pyasn1.type.tag import TagSet

class SetEncoder(encoder.SetEncoder): ...

tagMap: dict[TagSet, ber_encoder.AbstractItemEncoder]
typeMap: dict[int, ber_encoder.AbstractItemEncoder]

class Encoder(encoder.Encoder):
fixedDefLengthMode: bool
fixedChunkSize: int
Expand Down
5 changes: 5 additions & 0 deletions stubs/pyasn1/pyasn1/codec/native/decoder.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ from _typeshed import Incomplete
from collections.abc import Callable
from typing_extensions import TypeAlias

from pyasn1.type.tag import TagSet

_Unused: TypeAlias = object

class AbstractScalarDecoder:
Expand All @@ -19,6 +21,9 @@ class SequenceOfOrSetOfDecoder:
class ChoiceDecoder:
def __call__(self, pyObject, asn1Spec, decodeFun: Callable[..., Incomplete] | None = ..., **options): ...

tagMap: dict[TagSet, AbstractScalarDecoder | SequenceOrSetDecoder | SequenceOfOrSetOfDecoder | ChoiceDecoder]
typeMap: dict[int, AbstractScalarDecoder | SequenceOrSetDecoder | SequenceOfOrSetOfDecoder | ChoiceDecoder]

class Decoder:
def __init__(self, tagMap, typeMap) -> None: ...
def __call__(self, pyObject, asn1Spec, **options): ...
Expand Down
5 changes: 5 additions & 0 deletions stubs/pyasn1/pyasn1/codec/native/encoder.pyi
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
from abc import abstractmethod
from collections import OrderedDict

from pyasn1.type.tag import TagSet

class AbstractItemEncoder:
@abstractmethod
def encode(self, value, encodeFun, **options) -> None: ...
Expand Down Expand Up @@ -44,6 +46,9 @@ class ChoiceEncoder(SequenceEncoder): ...
class AnyEncoder(AbstractItemEncoder):
def encode(self, value, encodeFun, **options): ...

tagMap: dict[TagSet, AbstractItemEncoder]
typeMap: dict[int, AbstractItemEncoder]

class Encoder:
def __init__(self, tagMap, typeMap=...) -> None: ...
def __call__(self, value, **options): ...
Expand Down