pyo3/pyo3-derive-backend/src/defs.rs

754 lines
22 KiB
Rust
Raw Normal View History

2017-06-24 08:36:51 +00:00
// Copyright (c) 2017-present PyO3 Project and Contributors
use func::MethodProto;
pub struct Proto {
pub name: &'static str,
pub methods: &'static [MethodProto],
pub py_methods: &'static [PyMethod],
}
pub struct PyMethod {
pub name: &'static str,
pub proto: &'static str,
}
pub const OBJECT: Proto = Proto {
name: "Object",
methods: &[
MethodProto::Binary {
name: "__getattr__",
arg: "Name",
2017-05-23 19:57:18 +00:00
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::basic::PyObjectGetAttrProtocol",
},
MethodProto::Ternary {
2017-05-22 05:22:45 +00:00
name: "__setattr__",
arg1: "Name",
arg2: "Value",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::basic::PyObjectSetAttrProtocol",
},
MethodProto::Binary {
name: "__delattr__",
arg: "Name",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::basic::PyObjectDelAttrProtocol",
},
MethodProto::Unary {
name: "__str__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::basic::PyObjectStrProtocol",
},
MethodProto::Unary {
name: "__repr__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::basic::PyObjectReprProtocol",
},
MethodProto::Binary {
name: "__format__",
arg: "Format",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::basic::PyObjectFormatProtocol",
},
MethodProto::Unary {
name: "__hash__",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::basic::PyObjectHashProtocol",
},
MethodProto::Unary {
name: "__bytes__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::basic::PyObjectBytesProtocol",
},
MethodProto::Unary {
name: "__unicode__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::basic::PyObjectUnicodeProtocol",
},
MethodProto::Unary {
name: "__bool__",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::basic::PyObjectBoolProtocol",
},
MethodProto::Binary {
name: "__richcmp__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::basic::PyObjectRichcmpProtocol",
},
],
py_methods: &[
PyMethod {
name: "__format__",
2018-08-26 16:41:55 +00:00
proto: "::pyo3::class::basic::FormatProtocolImpl",
},
PyMethod {
name: "__bytes__",
2018-08-26 16:41:55 +00:00
proto: "::pyo3::class::basic::BytesProtocolImpl",
},
PyMethod {
name: "__unicode__",
2018-08-26 16:41:55 +00:00
proto: "::pyo3::class::basic::UnicodeProtocolImpl",
},
2018-07-03 20:28:40 +00:00
],
};
pub const ASYNC: Proto = Proto {
name: "Async",
methods: &[
MethodProto::Unary {
name: "__await__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::async::PyAsyncAwaitProtocol",
},
MethodProto::Unary {
name: "__aiter__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::async::PyAsyncAiterProtocol",
},
MethodProto::Unary {
name: "__anext__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::async::PyAsyncAnextProtocol",
},
MethodProto::Unary {
name: "__aenter__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::async::PyAsyncAenterProtocol",
},
MethodProto::Quaternary {
name: "__aexit__",
2018-07-03 20:28:40 +00:00
arg1: "ExcType",
arg2: "ExcValue",
arg3: "Traceback",
proto: "::pyo3::class::async::PyAsyncAexitProtocol",
},
],
py_methods: &[
PyMethod {
name: "__aenter__",
2017-05-25 03:31:51 +00:00
proto: "::pyo3::class::async::PyAsyncAenterProtocolImpl",
},
PyMethod {
name: "__aexit__",
2017-05-25 03:31:51 +00:00
proto: "::pyo3::class::async::PyAsyncAexitProtocolImpl",
},
],
};
pub const BUFFER: Proto = Proto {
name: "Buffer",
methods: &[
2018-07-03 20:28:40 +00:00
MethodProto::Unary {
name: "bf_getbuffer",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::buffer::PyBufferGetBufferProtocol",
},
MethodProto::Unary {
name: "bf_releasebuffer",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::buffer::PyBufferReleaseBufferProtocol",
},
],
py_methods: &[],
};
pub const CONTEXT: Proto = Proto {
name: "Context",
methods: &[
2018-07-03 20:28:40 +00:00
MethodProto::Unary {
name: "__enter__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::context::PyContextEnterProtocol",
},
MethodProto::Quaternary {
name: "__exit__",
2018-07-03 20:28:40 +00:00
arg1: "ExcType",
arg2: "ExcValue",
arg3: "Traceback",
proto: "::pyo3::class::context::PyContextExitProtocol",
},
],
py_methods: &[
PyMethod {
name: "__enter__",
2018-06-15 20:50:26 +00:00
proto: "::pyo3::class::context::PyContextEnterProtocolImpl",
},
PyMethod {
name: "__exit__",
2018-06-15 20:50:26 +00:00
proto: "::pyo3::class::context::PyContextExitProtocolImpl",
},
],
};
2017-05-30 19:42:07 +00:00
pub const GC: Proto = Proto {
name: "GC",
methods: &[
2018-07-03 20:28:40 +00:00
MethodProto::Free {
2017-05-30 19:42:07 +00:00
name: "__traverse__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::gc::PyGCTraverseProtocol",
},
MethodProto::Free {
2017-05-30 19:42:07 +00:00
name: "__clear__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::gc::PyGCClearProtocol",
},
2017-05-30 19:42:07 +00:00
],
py_methods: &[],
};
pub const DESCR: Proto = Proto {
name: "Descriptor",
methods: &[
MethodProto::Ternary {
name: "__get__",
arg1: "Inst",
arg2: "Owner",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::descr::PyDescrGetProtocol",
},
MethodProto::Ternary {
name: "__set__",
arg1: "Inst",
arg2: "Value",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::descr::PyDescrSetProtocol",
},
MethodProto::Binary {
name: "__det__",
arg: "Inst",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::descr::PyDescrDelProtocol",
},
MethodProto::Binary {
name: "__set_name__",
arg: "Inst",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::descr::PyDescrSetNameProtocol",
},
],
py_methods: &[
PyMethod {
name: "__del__",
2018-06-15 20:50:26 +00:00
proto: "::pyo3::class::context::PyDescrDelProtocolImpl",
},
PyMethod {
name: "__set_name__",
2018-06-15 20:50:26 +00:00
proto: "::pyo3::class::context::PyDescrNameProtocolImpl",
},
],
};
pub const ITER: Proto = Proto {
name: "Iter",
py_methods: &[],
methods: &[
2018-07-03 20:28:40 +00:00
MethodProto::Unary {
name: "__iter__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::iter::PyIterIterProtocol",
},
MethodProto::Unary {
name: "__next__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::iter::PyIterNextProtocol",
},
],
};
pub const MAPPING: Proto = Proto {
name: "Mapping",
methods: &[
2018-07-03 20:28:40 +00:00
MethodProto::Unary {
name: "__len__",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::mapping::PyMappingLenProtocol",
},
MethodProto::Binary {
name: "__getitem__",
arg: "Key",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::mapping::PyMappingGetItemProtocol",
},
MethodProto::Ternary {
name: "__setitem__",
arg1: "Key",
arg2: "Value",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::mapping::PyMappingSetItemProtocol",
},
MethodProto::Binary {
name: "__delitem__",
arg: "Key",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::mapping::PyMappingDelItemProtocol",
},
MethodProto::Binary {
name: "__contains__",
arg: "Value",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::mapping::PyMappingContainsProtocol",
},
MethodProto::Unary {
name: "__reversed__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::mapping::PyMappingReversedProtocol",
},
MethodProto::Unary {
name: "__iter__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::mapping::PyMappingIterProtocol",
},
],
py_methods: &[
PyMethod {
name: "__iter__",
2017-05-25 03:31:51 +00:00
proto: "::pyo3::class::mapping::PyMappingIterProtocolImpl",
},
PyMethod {
name: "__contains__",
2017-05-25 03:31:51 +00:00
proto: "::pyo3::class::mapping::PyMappingContainsProtocolImpl",
},
PyMethod {
name: "__reversed__",
2017-05-25 03:31:51 +00:00
proto: "::pyo3::class::mapping::PyMappingReversedProtocolImpl",
},
],
};
pub const SEQ: Proto = Proto {
name: "Sequence",
methods: &[
2018-07-03 20:28:40 +00:00
MethodProto::Unary {
name: "__len__",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "pyo3::class::sequence::PySequenceLenProtocol",
},
MethodProto::Unary {
name: "__getitem__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "pyo3::class::sequence::PySequenceGetItemProtocol",
},
MethodProto::Binary {
name: "__setitem__",
arg: "Value",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "pyo3::class::sequence::PyMappingSetItemProtocol",
},
MethodProto::Binary {
name: "__delitem__",
arg: "Key",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "pyo3::class::mapping::PyMappingDelItemProtocol",
},
MethodProto::Binary {
name: "__contains__",
arg: "Item",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "pyo3::class::sequence::PySequenceContainsProtocol",
},
MethodProto::Binary {
name: "__concat__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "pyo3::class::sequence::PySequenceConcatProtocol",
},
MethodProto::Unary {
name: "__repeat__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "pyo3::class::sequence::PySequenceRepeatProtocol",
},
MethodProto::Binary {
name: "__inplace_concat__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "pyo3::class::sequence::PySequenceInplaceConcatProtocol",
},
MethodProto::Unary {
name: "__inplace_repeat__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "pyo3::class::sequence::PySequenceInplaceRepeatProtocol",
},
],
py_methods: &[],
};
pub const NUM: Proto = Proto {
name: "Number",
methods: &[
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__add__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberAddProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__sub__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberSubProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__mul__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberMulProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__matmul__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberMatmulProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__truediv__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberTruedivProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__floordiv__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberFloordivProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__mod__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberModProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__divmod__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberDivmodProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::TernaryS {
name: "__pow__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
arg3: "Modulo",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberPowProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__lshift__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberLShiftProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__rshift__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRShiftProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__and__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberAndProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__xor__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberXorProtocol",
},
2017-07-17 23:49:19 +00:00
MethodProto::BinaryS {
name: "__or__",
2017-07-17 23:49:19 +00:00
arg1: "Left",
arg2: "Right",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberOrProtocol",
},
MethodProto::Binary {
name: "__radd__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRAddProtocol",
},
MethodProto::Binary {
name: "__rsub__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRSubProtocol",
},
MethodProto::Binary {
name: "__rmul__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRMulProtocol",
},
MethodProto::Binary {
name: "__rmatmul__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRMatmulProtocol",
},
MethodProto::Binary {
name: "__rtruediv__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRTruedivProtocol",
},
MethodProto::Binary {
name: "__rfloordiv__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRFloordivProtocol",
},
MethodProto::Binary {
name: "__rmod__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRModProtocol",
},
MethodProto::Binary {
name: "__rdivmod__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRDivmodProtocol",
},
MethodProto::Ternary {
name: "__rpow__",
arg1: "Other",
arg2: "Modulo",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRPowProtocol",
},
MethodProto::Binary {
name: "__rlshift__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRLShiftProtocol",
},
MethodProto::Binary {
name: "__rrshift__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRRShiftProtocol",
},
MethodProto::Binary {
name: "__rand__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRAndProtocol",
},
MethodProto::Binary {
name: "__rxor__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRXorProtocol",
},
MethodProto::Binary {
name: "__ror__",
arg: "Other",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberROrProtocol",
},
MethodProto::Binary {
name: "__iadd__",
arg: "Other",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberIAddProtocol",
},
MethodProto::Binary {
name: "__isub__",
arg: "Other",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberISubProtocol",
},
MethodProto::Binary {
name: "__imul__",
arg: "Other",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberIMulProtocol",
},
MethodProto::Binary {
name: "__imatmul__",
arg: "Other",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberIMatmulProtocol",
},
MethodProto::Binary {
name: "__itruediv__",
arg: "Other",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberITruedivProtocol",
},
MethodProto::Binary {
name: "__ifloordiv__",
arg: "Other",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberIFloordivProtocol",
},
MethodProto::Binary {
name: "__imod__",
arg: "Other",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberIModProtocol",
},
MethodProto::Ternary {
name: "__ipow__",
arg1: "Other",
arg2: "Modulo",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberIPowProtocol",
},
MethodProto::Binary {
name: "__ilshift__",
arg: "Other",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberILShiftProtocol",
},
MethodProto::Binary {
name: "__irshift__",
arg: "Other",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberIRShiftProtocol",
},
MethodProto::Binary {
name: "__iand__",
arg: "Other",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberIAndProtocol",
},
MethodProto::Binary {
name: "__ixor__",
arg: "Other",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberIXorProtocol",
},
MethodProto::Binary {
name: "__ior__",
arg: "Other",
pyres: false,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberIOrProtocol",
},
MethodProto::Unary {
name: "__neg__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberNegProtocol",
},
MethodProto::Unary {
name: "__pos__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberPosProtocol",
},
MethodProto::Unary {
name: "__abs__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberAbsProtocol",
},
MethodProto::Unary {
name: "__invert__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberInvertProtocol",
},
MethodProto::Unary {
name: "__complex__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberComplexProtocol",
},
MethodProto::Unary {
name: "__int__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberIntProtocol",
},
MethodProto::Unary {
name: "__float__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberFloatProtocol",
},
MethodProto::Unary {
name: "__round__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRoundProtocol",
},
MethodProto::Unary {
name: "__index__",
pyres: true,
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberIndexProtocol",
},
],
py_methods: &[
PyMethod {
name: "__radd__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRAddProtocolImpl",
},
PyMethod {
name: "__rsub__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRSubProtocolImpl",
},
PyMethod {
name: "__rmul__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRMulProtocolImpl",
},
PyMethod {
name: "__rmatmul__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRMatmulProtocolImpl",
},
PyMethod {
name: "__rtruediv__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRTruedivProtocolImpl",
},
PyMethod {
name: "__rfloordiv__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRFloordivProtocolImpl",
},
PyMethod {
name: "__rmod__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRModProtocolImpl",
},
PyMethod {
name: "__rdivmod__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRDivmodProtocolImpl",
},
PyMethod {
name: "__rpow__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRPowProtocolImpl",
},
PyMethod {
name: "__rlshift__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRLShiftProtocolImpl",
},
PyMethod {
name: "__rrshift__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRRShiftProtocolImpl",
},
PyMethod {
name: "__rand__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRAndProtocolImpl",
},
PyMethod {
name: "__rxor__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRXorProtocolImpl",
},
PyMethod {
name: "__ror__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberROrProtocolImpl",
},
PyMethod {
name: "__complex__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberComplexProtocolImpl",
},
PyMethod {
name: "__round__",
2018-07-03 20:28:40 +00:00
proto: "::pyo3::class::number::PyNumberRoundProtocolImpl",
},
],
};