3

All the Python-provided types have a check method (i.e., PyList_Check) that allows you to check if an arbitrary PyObject* is actually a specific type.

How can I implement this for my own types? I haven't found anything good online for this, though it seems like a pretty normal thing to want to do.

Also, maybe I'm just terrible at looking through large source trees, but I cannot for the life of me find the implementation of PyList_Check or any of it's companions in the Python (2.5) source.

1

2 Answers 2

2

That's because they're macros that use deep magic. Save yourself a bit of headache and use PyObject_IsInstance() instead.

Sign up to request clarification or add additional context in comments.

Comments

0

If you'd like to implement your own macro, you could try...

#define PyMyType_Check(op) \
    PyObject_TypeCheck(op, &PyMyType_Type)

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.