summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrett Cannon <bcannon@gmail.com>2003-10-19 21:19:40 (GMT)
committerBrett Cannon <bcannon@gmail.com>2003-10-19 21:19:40 (GMT)
commitd05235ec49de1cf12316e9632a2b3d339dae04c2 (patch)
tree1419795a3b7814c70939b082a63eca23a5b73844
parent52da4496cd9bca9ebfe24355769ac1655353367e (diff)
downloadcpython-d05235ec49de1cf12316e9632a2b3d339dae04c2.zip
cpython-d05235ec49de1cf12316e9632a2b3d339dae04c2.tar.gz
cpython-d05235ec49de1cf12316e9632a2b3d339dae04c2.tar.bz2
Defined macros Py_RETURN_(TRUE|FALSE|NONE) as helper functions for returning
the specified value. All three Py_INCREF the singleton and then return it.
-rw-r--r--Include/boolobject.h4
-rw-r--r--Include/object.h3
2 files changed, 7 insertions, 0 deletions
diff --git a/Include/boolobject.h b/Include/boolobject.h
index e7a4e60..7c4939b 100644
--- a/Include/boolobject.h
+++ b/Include/boolobject.h
@@ -23,6 +23,10 @@ PyAPI_DATA(PyIntObject) _Py_ZeroStruct, _Py_TrueStruct;
#define Py_False ((PyObject *) &_Py_ZeroStruct)
#define Py_True ((PyObject *) &_Py_TrueStruct)
+/* Macros for returning Py_True or Py_False, respectively */
+#define Py_RETURN_TRUE Py_INCREF(Py_True); return Py_True;
+#define Py_RETURN_FALSE Py_INCREF(Py_False); return Py_False;
+
/* Function to return a bool from a C long */
PyAPI_FUNC(PyObject *) PyBool_FromLong(long);
diff --git a/Include/object.h b/Include/object.h
index 252e99c..8fdd4dc 100644
--- a/Include/object.h
+++ b/Include/object.h
@@ -633,6 +633,9 @@ Don't forget to apply Py_INCREF() when returning this value!!!
PyAPI_DATA(PyObject) _Py_NoneStruct; /* Don't use this directly */
#define Py_None (&_Py_NoneStruct)
+/* Macro for returning Py_None from a function */
+#define Py_RETURN_NONE Py_INCREF(Py_None); return Py_None;
+
/*
Py_NotImplemented is a singleton used to signal that an operation is
not implemented for a given type combination.