11"""Decoder for the MaxMind DB data section."""
22
33import struct
4- from typing import Dict , List , Tuple , Union , cast
4+ from typing import Union , cast
55
66try :
77 # pylint: disable=unused-import
@@ -37,35 +37,35 @@ def __init__(
3737 self ._buffer = database_buffer
3838 self ._pointer_base = pointer_base
3939
40- def _decode_array (self , size : int , offset : int ) -> Tuple [ List [Record ], int ]:
40+ def _decode_array (self , size : int , offset : int ) -> tuple [ list [Record ], int ]:
4141 array = []
4242 for _ in range (size ):
4343 (value , offset ) = self .decode (offset )
4444 array .append (value )
4545 return array , offset
4646
47- def _decode_boolean (self , size : int , offset : int ) -> Tuple [bool , int ]:
47+ def _decode_boolean (self , size : int , offset : int ) -> tuple [bool , int ]:
4848 return size != 0 , offset
4949
50- def _decode_bytes (self , size : int , offset : int ) -> Tuple [bytes , int ]:
50+ def _decode_bytes (self , size : int , offset : int ) -> tuple [bytes , int ]:
5151 new_offset = offset + size
5252 return self ._buffer [offset :new_offset ], new_offset
5353
54- def _decode_double (self , size : int , offset : int ) -> Tuple [float , int ]:
54+ def _decode_double (self , size : int , offset : int ) -> tuple [float , int ]:
5555 self ._verify_size (size , 8 )
5656 new_offset = offset + size
5757 packed_bytes = self ._buffer [offset :new_offset ]
5858 (value ,) = struct .unpack (b"!d" , packed_bytes )
5959 return value , new_offset
6060
61- def _decode_float (self , size : int , offset : int ) -> Tuple [float , int ]:
61+ def _decode_float (self , size : int , offset : int ) -> tuple [float , int ]:
6262 self ._verify_size (size , 4 )
6363 new_offset = offset + size
6464 packed_bytes = self ._buffer [offset :new_offset ]
6565 (value ,) = struct .unpack (b"!f" , packed_bytes )
6666 return value , new_offset
6767
68- def _decode_int32 (self , size : int , offset : int ) -> Tuple [int , int ]:
68+ def _decode_int32 (self , size : int , offset : int ) -> tuple [int , int ]:
6969 if size == 0 :
7070 return 0 , offset
7171 new_offset = offset + size
@@ -76,15 +76,15 @@ def _decode_int32(self, size: int, offset: int) -> Tuple[int, int]:
7676 (value ,) = struct .unpack (b"!i" , packed_bytes )
7777 return value , new_offset
7878
79- def _decode_map (self , size : int , offset : int ) -> Tuple [ Dict [str , Record ], int ]:
80- container : Dict [str , Record ] = {}
79+ def _decode_map (self , size : int , offset : int ) -> tuple [ dict [str , Record ], int ]:
80+ container : dict [str , Record ] = {}
8181 for _ in range (size ):
8282 (key , offset ) = self .decode (offset )
8383 (value , offset ) = self .decode (offset )
84- container [cast (str , key )] = value
84+ container [cast (" str" , key )] = value
8585 return container , offset
8686
87- def _decode_pointer (self , size : int , offset : int ) -> Tuple [Record , int ]:
87+ def _decode_pointer (self , size : int , offset : int ) -> tuple [Record , int ]:
8888 pointer_size = (size >> 3 ) + 1
8989
9090 buf = self ._buffer [offset : offset + pointer_size ]
@@ -107,12 +107,12 @@ def _decode_pointer(self, size: int, offset: int) -> Tuple[Record, int]:
107107 (value , _ ) = self .decode (pointer )
108108 return value , new_offset
109109
110- def _decode_uint (self , size : int , offset : int ) -> Tuple [int , int ]:
110+ def _decode_uint (self , size : int , offset : int ) -> tuple [int , int ]:
111111 new_offset = offset + size
112112 uint_bytes = self ._buffer [offset :new_offset ]
113113 return int .from_bytes (uint_bytes , "big" ), new_offset
114114
115- def _decode_utf8_string (self , size : int , offset : int ) -> Tuple [str , int ]:
115+ def _decode_utf8_string (self , size : int , offset : int ) -> tuple [str , int ]:
116116 new_offset = offset + size
117117 return self ._buffer [offset :new_offset ].decode ("utf-8" ), new_offset
118118
@@ -132,7 +132,7 @@ def _decode_utf8_string(self, size: int, offset: int) -> Tuple[str, int]:
132132 15 : _decode_float ,
133133 }
134134
135- def decode (self , offset : int ) -> Tuple [Record , int ]:
135+ def decode (self , offset : int ) -> tuple [Record , int ]:
136136 """Decode a section of the data section starting at offset.
137137
138138 Arguments:
@@ -156,7 +156,7 @@ def decode(self, offset: int) -> Tuple[Record, int]:
156156 (size , new_offset ) = self ._size_from_ctrl_byte (ctrl_byte , new_offset , type_num )
157157 return decoder (self , size , new_offset )
158158
159- def _read_extended (self , offset : int ) -> Tuple [int , int ]:
159+ def _read_extended (self , offset : int ) -> tuple [int , int ]:
160160 next_byte = self ._buffer [offset ]
161161 type_num = next_byte + 7
162162 if type_num < 7 :
@@ -179,7 +179,7 @@ def _size_from_ctrl_byte(
179179 ctrl_byte : int ,
180180 offset : int ,
181181 type_num : int ,
182- ) -> Tuple [int , int ]:
182+ ) -> tuple [int , int ]:
183183 size = ctrl_byte & 0x1F
184184 if type_num == 1 or size < 29 :
185185 return size , offset
0 commit comments