美文网首页
type system

type system

作者: Nanlo | 来源:发表于2022-09-24 14:52 被阅读0次
    #define TPSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC) \
        {NAME, offsetof(PyTypeObject, SLOT), (void *)(FUNCTION), WRAPPER, \
         PyDoc_STR(DOC)}
    #define FLSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC, FLAGS) \
        {NAME, offsetof(PyTypeObject, SLOT), (void *)(FUNCTION), WRAPPER, \
         PyDoc_STR(DOC), FLAGS}
    #define ETSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC) \
        {NAME, offsetof(PyHeapTypeObject, SLOT), (void *)(FUNCTION), WRAPPER, \
         PyDoc_STR(DOC)}
    #define AMSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC) \
        ETSLOT(NAME, as_async.SLOT, FUNCTION, WRAPPER, DOC)
    #define SQSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC) \
        ETSLOT(NAME, as_sequence.SLOT, FUNCTION, WRAPPER, DOC)
    #define MPSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC) \
        ETSLOT(NAME, as_mapping.SLOT, FUNCTION, WRAPPER, DOC)
    #define NBSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC) \
        ETSLOT(NAME, as_number.SLOT, FUNCTION, WRAPPER, DOC)
    #define UNSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC) \
        ETSLOT(NAME, as_number.SLOT, FUNCTION, WRAPPER, \
               NAME "($self, /)\n--\n\n" DOC)
    #define IBSLOT(NAME, SLOT, FUNCTION, WRAPPER, DOC) \
        ETSLOT(NAME, as_number.SLOT, FUNCTION, WRAPPER, \
               NAME "($self, value, /)\n--\n\nReturn self" DOC "value.")
    #define BINSLOT(NAME, SLOT, FUNCTION, DOC) \
        ETSLOT(NAME, as_number.SLOT, FUNCTION, wrap_binaryfunc_l, \
               NAME "($self, value, /)\n--\n\nReturn self" DOC "value.")
    #define RBINSLOT(NAME, SLOT, FUNCTION, DOC) \
        ETSLOT(NAME, as_number.SLOT, FUNCTION, wrap_binaryfunc_r, \
               NAME "($self, value, /)\n--\n\nReturn value" DOC "self.")
    #define BINSLOTNOTINFIX(NAME, SLOT, FUNCTION, DOC) \
        ETSLOT(NAME, as_number.SLOT, FUNCTION, wrap_binaryfunc_l, \
               NAME "($self, value, /)\n--\n\n" DOC)
    #define RBINSLOTNOTINFIX(NAME, SLOT, FUNCTION, DOC) \
        ETSLOT(NAME, as_number.SLOT, FUNCTION, wrap_binaryfunc_r, \
               NAME "($self, value, /)\n--\n\n" DOC)
    

    相关文章

      网友评论

          本文标题:type system

          本文链接:https://www.haomeiwen.com/subject/viooortx.html