Skip to content

Commit 6a6f32c

Browse files
committed
Address review comments
1 parent 8aee818 commit 6a6f32c

File tree

16 files changed

+88
-43
lines changed

16 files changed

+88
-43
lines changed

mypyc/primitives/bytes_ops.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
error_kind=ERR_MAGIC,
3737
)
3838

39-
# isinstance(obj, bytes)
39+
# translate isinstance(obj, bytes)
4040
isinstance_bytes = function_op(
4141
name="builtins.isinstance",
4242
arg_types=[object_rprimitive],
@@ -54,7 +54,7 @@
5454
error_kind=ERR_MAGIC,
5555
)
5656

57-
# isinstance(obj, bytearray)
57+
# translate isinstance(obj, bytearray)
5858
isinstance_bytearray = function_op(
5959
name="builtins.isinstance",
6060
arg_types=[object_rprimitive],

mypyc/primitives/dict_ops.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@
7171
error_kind=ERR_MAGIC,
7272
)
7373

74-
# isinstance(obj, dict)
74+
# translate isinstance(obj, dict)
7575
isinstance_dict = function_op(
7676
name="builtins.isinstance",
7777
arg_types=[object_rprimitive],

mypyc/primitives/float_ops.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,7 @@
168168
error_kind=ERR_NEVER,
169169
)
170170

171+
# translate isinstance(obj, float)
171172
isinstance_float = function_op(
172173
name="builtins.isinstance",
173174
arg_types=[object_rprimitive],

mypyc/primitives/int_ops.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ def int_unary_op(name: str, c_function_name: str) -> PrimitiveDescription:
297297
error_kind=ERR_ALWAYS,
298298
)
299299

300-
# isinstance(obj, int)
300+
# translate isinstance(obj, int)
301301
isinstance_int = function_op(
302302
name="builtints.isinstance",
303303
arg_types=[object_rprimitive],

mypyc/primitives/list_ops.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656
extra_int_constants=[(0, int_rprimitive)],
5757
)
5858

59-
# isinstance(obj, list)
59+
# translate isinstance(obj, list)
6060
isinstance_list = function_op(
6161
name="builtins.isinstance",
6262
arg_types=[object_rprimitive],

mypyc/primitives/set_ops.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464
error_kind=ERR_MAGIC,
6565
)
6666

67-
# isinstance(obj, set)
67+
# translate isinstance(obj, set)
6868
isinstance_set = function_op(
6969
name="builtins.isinstance",
7070
arg_types=[object_rprimitive],
@@ -73,7 +73,7 @@
7373
error_kind=ERR_NEVER,
7474
)
7575

76-
# isinstance(obj, frozenset)
76+
# translate isinstance(obj, frozenset)
7777
isinstance_frozenset = function_op(
7878
name="builtins.isinstance",
7979
arg_types=[object_rprimitive],

mypyc/primitives/str_ops.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
error_kind=ERR_MAGIC,
4949
)
5050

51-
# isinstance(obj, str)
51+
# translate isinstance(obj, str)
5252
isinstance_str = function_op(
5353
name="builtins.isinstance",
5454
arg_types=[object_rprimitive],

mypyc/primitives/tuple_ops.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@
8484
error_kind=ERR_MAGIC,
8585
)
8686

87-
# isinstance(obj, tuple)
87+
# translate isinstance(obj, tuple)
8888
isinstance_tuple = function_op(
8989
name="builtins.isinstance",
9090
arg_types=[object_rprimitive],

mypyc/test-data/run-bools.test

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -230,13 +230,27 @@ def test_mix() -> None:
230230
0
231231

232232
[case testIsInstance]
233+
from typing import Any
233234
def test_built_in() -> None:
234-
assert isinstance(True, bool)
235-
assert isinstance(False, bool)
235+
true: Any = True
236+
false: Any = False
237+
assert isinstance(true, bool)
238+
assert isinstance(false, bool)
236239

237240
assert not isinstance(set(), bool)
238241
assert not isinstance((), bool)
239242
assert not isinstance((True, False), bool)
240243
assert not isinstance({False, True}, bool)
241-
assert not isinstance(1, bool)
242-
assert not isinstance('False', bool)
244+
assert not isinstance(int() + 1, bool)
245+
assert not isinstance(str() + 'False', bool)
246+
247+
def test_user_defined() -> None:
248+
from userdefinedbool import bool
249+
250+
b: Any = True
251+
assert isinstance(bool(), bool)
252+
assert not isinstance(b, bool)
253+
254+
[file userdefinedbool.py]
255+
class bool:
256+
pass

mypyc/test-data/run-bytes.test

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -326,20 +326,22 @@ def test_bytes_dunder() -> None:
326326

327327
[case testIsInstance]
328328
from copysubclass import subbytes, subbytearray
329+
from typing import Any
329330
def test_bytes() -> None:
330-
assert isinstance(b'', bytes)
331-
assert isinstance(b'123', bytes)
332-
assert isinstance(b'\xff', bytes)
331+
b: Any = b''
332+
assert isinstance(b, bytes)
333+
assert isinstance(b + b'123', bytes)
334+
assert isinstance(b + b'\xff', bytes)
333335
assert isinstance(subbytes(), bytes)
334-
assert isinstance(subbytes(b'123'), bytes)
335-
assert isinstance(subbytes(b'\xff'), bytes)
336+
assert isinstance(subbytes(b + b'123'), bytes)
337+
assert isinstance(subbytes(b + b'\xff'), bytes)
336338

337339
assert not isinstance(set(), bytes)
338340
assert not isinstance((), bytes)
339341
assert not isinstance((b'1',b'2',b'3'), bytes)
340342
assert not isinstance({b'a',b'b'}, bytes)
341-
assert not isinstance(1, bytes)
342-
assert not isinstance('a', bytes)
343+
assert not isinstance(int() + 1, bytes)
344+
assert not isinstance(str() + 'a', bytes)
343345

344346
def test_user_defined_bytes() -> None:
345347
from userdefinedbytes import bytes
@@ -359,8 +361,8 @@ def test_bytearray() -> None:
359361
assert not isinstance((), bytearray)
360362
assert not isinstance((bytearray(b'1'),bytearray(b'2'),bytearray(b'3')), bytearray)
361363
assert not isinstance([bytearray(b'a'),bytearray(b'b')], bytearray)
362-
assert not isinstance(1, bytearray)
363-
assert not isinstance('a', bytearray)
364+
assert not isinstance(int() + 1, bytearray)
365+
assert not isinstance(str() + 'a', bytearray)
364366

365367
[file copysubclass.py]
366368
class subbytes(bytes):

0 commit comments

Comments
 (0)