Skip to content

Commit a91127c

Browse files
authored
Reorder PyNumberBinaryOp to match NB_* constants (RustPython#7512)
Align variant ordering with BinaryOperator enum and CPython's NB_* constants from opcode.h. Divmod is placed last as it has no corresponding NB_* constant.
1 parent af0c252 commit a91127c

1 file changed

Lines changed: 16 additions & 15 deletions

File tree

crates/vm/src/protocol/number.rs

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -200,33 +200,34 @@ impl PyNumberMethods {
200200
}
201201
}
202202

203+
/// Matches the NB_* constants ordering from opcode.h / BinaryOperator.
203204
#[derive(Copy, Clone)]
204205
pub enum PyNumberBinaryOp {
205206
Add,
206-
Subtract,
207+
And,
208+
FloorDivide,
209+
Lshift,
210+
MatrixMultiply,
207211
Multiply,
208212
Remainder,
209-
Divmod,
210-
Lshift,
213+
Or,
211214
Rshift,
212-
And,
215+
Subtract,
216+
TrueDivide,
213217
Xor,
214-
Or,
215218
InplaceAdd,
216-
InplaceSubtract,
219+
InplaceAnd,
220+
InplaceFloorDivide,
221+
InplaceLshift,
222+
InplaceMatrixMultiply,
217223
InplaceMultiply,
218224
InplaceRemainder,
219-
InplaceLshift,
220-
InplaceRshift,
221-
InplaceAnd,
222-
InplaceXor,
223225
InplaceOr,
224-
FloorDivide,
225-
TrueDivide,
226-
InplaceFloorDivide,
226+
InplaceRshift,
227+
InplaceSubtract,
227228
InplaceTrueDivide,
228-
MatrixMultiply,
229-
InplaceMatrixMultiply,
229+
InplaceXor,
230+
Divmod,
230231
}
231232

232233
impl PyNumberBinaryOp {

0 commit comments

Comments
 (0)