9595)
9696from mypyc .primitives .float_ops import isinstance_float
9797from mypyc .primitives .int_ops import (
98- isinstance_int ,
9998 int_to_big_endian_op ,
10099 int_to_bytes_op ,
101100 int_to_little_endian_op ,
101+ isinstance_int ,
102102)
103103from mypyc .primitives .list_ops import isinstance_list , new_list_set_item_op
104104from mypyc .primitives .misc_ops import isinstance_bool
@@ -1006,6 +1006,7 @@ def translate_ord(builder: IRBuilder, expr: CallExpr, callee: RefExpr) -> Value
10061006 return Integer (ord (arg .value ))
10071007 return None
10081008
1009+
10091010@specialize_function ("to_bytes" , int_rprimitive )
10101011def specialize_int_to_bytes (builder : IRBuilder , expr : CallExpr , callee : RefExpr ) -> Value | None :
10111012 # int.to_bytes(length, byteorder, signed=False)
@@ -1018,9 +1019,13 @@ def specialize_int_to_bytes(builder: IRBuilder, expr: CallExpr, callee: RefExpr)
10181019 signed_arg = builder .accept (expr .args [3 ]) if len (expr .args ) == 4 else builder .false ()
10191020 if isinstance (byteorder_expr , StrExpr ):
10201021 if byteorder_expr .value == "little" :
1021- return builder .call_c (int_to_little_endian_op , [self_arg , length_arg , signed_arg ], expr .line )
1022+ return builder .call_c (
1023+ int_to_little_endian_op , [self_arg , length_arg , signed_arg ], expr .line
1024+ )
10221025 elif byteorder_expr .value == "big" :
1023- return builder .call_c (int_to_big_endian_op , [self_arg , length_arg , signed_arg ], expr .line )
1026+ return builder .call_c (
1027+ int_to_big_endian_op , [self_arg , length_arg , signed_arg ], expr .line
1028+ )
10241029 # Fallback to generic primitive op
10251030 byteorder_arg = builder .accept (byteorder_expr )
10261031 return builder .primitive_op (
0 commit comments