symbian-qemu-0.9.1-12/python-2.6.1/Tools/modulator/Templates/object_tp_as_number
changeset 1 2fb8b9db1c86
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian-qemu-0.9.1-12/python-2.6.1/Tools/modulator/Templates/object_tp_as_number	Fri Jul 31 15:01:17 2009 +0100
@@ -0,0 +1,169 @@
+
+/* Code to access $name$ objects as numbers */
+
+static PyObject *
+$abbrev$_add($abbrev$object *v, $abbrev$object *w)
+{
+	/* XXXX Add them */
+}
+
+static PyObject *
+$abbrev$_sub($abbrev$object *v, $abbrev$object *w)
+{
+	/* XXXX Subtract them */
+}
+
+static PyObject *
+$abbrev$_mul($abbrev$object *v, $abbrev$object *w)
+{
+	/* XXXX Multiply them */
+}
+
+static PyObject *
+$abbrev$_div($abbrev$object *x, $abbrev$object *y)
+{
+	/* XXXX Divide them */
+}
+
+static PyObject *
+$abbrev$_mod($abbrev$object *x, $abbrev$object *y)
+{
+	/* XXXX Modulo them */
+}
+
+static PyObject *
+$abbrev$_divmod($abbrev$object *x, $abbrev$object *y)
+{
+	/* XXXX Return 2-tuple with div and mod */
+}
+
+static PyObject *
+$abbrev$_pow($abbrev$object *v, $abbrev$object *w, $abbrev$object *z)
+{
+	/* XXXX */
+}				
+
+static PyObject *
+$abbrev$_neg($abbrev$object *v)
+{
+	/* XXXX */
+}
+
+static PyObject *
+$abbrev$_pos($abbrev$object *v)
+{
+	/* XXXX */
+}
+
+static PyObject *
+$abbrev$_abs($abbrev$object *v)
+{
+	/* XXXX */
+}
+
+static int
+$abbrev$_nonzero($abbrev$object *v)
+{
+	/* XXXX Return 1 if non-zero */
+}
+
+static PyObject *
+$abbrev$_invert($abbrev$object *v)
+{
+	/* XXXX */
+}
+
+static PyObject *
+$abbrev$_lshift($abbrev$object *v, $abbrev$object *w)
+{
+	/* XXXX */
+}
+
+static PyObject *
+$abbrev$_rshift($abbrev$object *v, $abbrev$object *w)
+{
+	/* XXXX */
+}
+
+static PyObject *
+$abbrev$_and($abbrev$object *v, $abbrev$object *w)
+{
+	/* XXXX */
+}
+
+static PyObject *
+$abbrev$_xor($abbrev$object *v, $abbrev$object *w)
+{
+	/* XXXX */
+}
+
+static PyObject *
+$abbrev$_or($abbrev$object *v, $abbrev$object *w)
+{
+	/* XXXX */
+}
+
+static int
+$abbrev$_coerce(PyObject **pv, PyObject **pw)
+{
+	/* XXXX I haven't a clue... */
+	return 1;
+}
+
+static PyObject *
+$abbrev$_int($abbrev$object *v)
+{
+	/* XXXX */
+}
+
+static PyObject *
+$abbrev$_long($abbrev$object *v)
+{
+	/* XXXX */
+}
+
+static PyObject *
+$abbrev$_float($abbrev$object *v)
+{
+	/* XXXX */
+}
+
+static PyObject *
+$abbrev$_oct($abbrev$object *v)
+{
+	/* XXXX Return object as octal stringobject */
+}
+
+static PyObject *
+$abbrev$_hex($abbrev$object *v)
+{
+	/* XXXX Return object as hex stringobject */
+}
+
+static PyNumberMethods $abbrev$_as_number = {
+	(binaryfunc)$abbrev$_add,	/*nb_add*/
+	(binaryfunc)$abbrev$_sub,	/*nb_subtract*/
+	(binaryfunc)$abbrev$_mul,	/*nb_multiply*/
+	(binaryfunc)$abbrev$_div,	/*nb_divide*/
+	(binaryfunc)$abbrev$_mod,	/*nb_remainder*/
+	(binaryfunc)$abbrev$_divmod,	/*nb_divmod*/
+	(ternaryfunc)$abbrev$_pow,	/*nb_power*/
+	(unaryfunc)$abbrev$_neg,	/*nb_negative*/
+	(unaryfunc)$abbrev$_pos,	/*nb_positive*/
+	(unaryfunc)$abbrev$_abs,	/*nb_absolute*/
+	(inquiry)$abbrev$_nonzero,	/*nb_nonzero*/
+	(unaryfunc)$abbrev$_invert,	/*nb_invert*/
+	(binaryfunc)$abbrev$_lshift,	/*nb_lshift*/
+	(binaryfunc)$abbrev$_rshift,	/*nb_rshift*/
+	(binaryfunc)$abbrev$_and,	/*nb_and*/
+	(binaryfunc)$abbrev$_xor,	/*nb_xor*/
+	(binaryfunc)$abbrev$_or,	/*nb_or*/
+	(coercion)$abbrev$_coerce,	/*nb_coerce*/
+	(unaryfunc)$abbrev$_int,	/*nb_int*/
+	(unaryfunc)$abbrev$_long,	/*nb_long*/
+	(unaryfunc)$abbrev$_float,	/*nb_float*/
+	(unaryfunc)$abbrev$_oct,	/*nb_oct*/
+	(unaryfunc)$abbrev$_hex,	/*nb_hex*/
+};
+
+/* ------------------------------------------------------- */