Skip to content

Commit 9002513

Browse files
committed
Fix type hint for returns
Fixed int | None return hints, mypy error
1 parent c9d6a61 commit 9002513

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

bit_manipulation/multibit_manipulation.py

+9-8
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@
6969
Anything like int(None) is going to cause a loud error. """
7070

7171

72-
def bit_get(bint: int, index: int) -> int:
72+
def bit_get(bint: int, index: int) -> int | None:
7373
"""Get value of bit at index in bint.
7474
7575
>>> bit_get(15, 0)
@@ -87,7 +87,7 @@ def bit_get(bint: int, index: int) -> int:
8787
return multibit_get(bint, index, 1)
8888

8989

90-
def bit_set(bint: int, index: int, value: int = 1) -> int:
90+
def bit_set(bint: int, index: int, value: int = 1) -> int | None:
9191
"""Set bit at index to value 1 or 0, like set() or unset().
9292
9393
>>> bit_set(15, 0, 0)
@@ -106,7 +106,7 @@ def bit_set(bint: int, index: int, value: int = 1) -> int:
106106
return multibit_set(bint, index, 1, value)
107107

108108

109-
def bit_insert(bint: int, index: int, value: int = 1) -> int:
109+
def bit_insert(bint: int, index: int, value: int = 1) -> int | None:
110110
"""Insert bit value before index.
111111
112112
>>> bit_insert(15, 0, 0)
@@ -125,7 +125,7 @@ def bit_insert(bint: int, index: int, value: int = 1) -> int:
125125
return multibit_insert(bint, index, 1, value)
126126

127127

128-
def bit_remove(bint: int, index: int) -> int:
128+
def bit_remove(bint: int, index: int) -> int | None:
129129
"""Remove the bit at index from bint.
130130
131131
>>> bit_remove(15, 0)
@@ -141,7 +141,7 @@ def bit_remove(bint: int, index: int) -> int:
141141
return multibit_remove(bint, index, 1)
142142

143143

144-
def multibit_get(bint: int, index: int, bit_len: int) -> int:
144+
def multibit_get(bint: int, index: int, bit_len: int) -> int | None:
145145
"""Get bit_len number of bits starting from index.
146146
819 = 1100110011.
147147
@@ -161,7 +161,7 @@ def multibit_get(bint: int, index: int, bit_len: int) -> int:
161161
return (bint >> index) & ((1 << bit_len) - 1)
162162

163163

164-
def multibit_set(bint: int, index: int, bit_len: int, value: int) -> int:
164+
def multibit_set(bint: int, index: int, bit_len: int, value: int) -> int | None:
165165
"""Overlay bint at index with value for bit_len bits.
166166
167167
>>> multibit_set(0, 1, 1, 0)
@@ -186,7 +186,7 @@ def multibit_set(bint: int, index: int, bit_len: int, value: int) -> int:
186186
)
187187

188188

189-
def multibit_insert(bint: int, index: int, bit_len: int, value: int) -> int:
189+
def multibit_insert(bint: int, index: int, bit_len: int, value: int) -> int | None:
190190
"""Insert before index-th slot
191191
192192
>>> multibit_insert(0, 1, 1, 1)
@@ -209,7 +209,7 @@ def multibit_insert(bint: int, index: int, bit_len: int, value: int) -> int:
209209
return ((((bint >> index) << bit_len) | value) << index) | bint & ((1 << index) - 1)
210210

211211

212-
def multibit_remove(bint: int, index: int, bit_len: int) -> int:
212+
def multibit_remove(bint: int, index: int, bit_len: int) -> int | None:
213213
"""Remove bits in bint from index to index+bit_len.
214214
215215
>>> multibit_remove(3, 1, 1)
@@ -231,6 +231,7 @@ def multibit_remove(bint: int, index: int, bit_len: int) -> int:
231231

232232

233233
if __name__ == "__main__":
234+
234235
import doctest
235236

236237
doctest.testmod()

0 commit comments

Comments
 (0)