diff Python/bltinmodule.c @ 45433:4a9522fd75a6 legacy-trunk

Added bin() builtin. I'm going to check in the tests in a seperate checkin, because the builtin doesn't need to be ported to py3k, but the tests are missing in py3k and need to be merged there.
author Eric Smith <eric@trueblade.com>
date Fri, 22 Feb 2008 16:30:22 +0000
parents b7231bf6bfb7
children 002a5ac792b1
line wrap: on
line diff
--- a/Python/bltinmodule.c	Fri Feb 22 12:57:05 2008 +0000
+++ b/Python/bltinmodule.c	Fri Feb 22 16:30:22 2008 +0000
@@ -209,6 +209,18 @@
 
 
 static PyObject *
+builtin_bin(PyObject *self, PyObject *v)
+{
+        return PyNumber_ToBase(v, 2);
+}
+
+PyDoc_STRVAR(bin_doc,
+"bin(number) -> string\n\
+\n\
+Return the binary representation of an integer or long integer.");
+
+
+static PyObject *
 builtin_callable(PyObject *self, PyObject *v)
 {
 	if (Py_Py3kWarningFlag &&
@@ -2366,6 +2378,7 @@
  	{"all",		builtin_all,        METH_O, all_doc},
  	{"any",		builtin_any,        METH_O, any_doc},
  	{"apply",	builtin_apply,      METH_VARARGS, apply_doc},
+	{"bin",		builtin_bin,	    METH_O, bin_doc},
  	{"callable",	builtin_callable,   METH_O, callable_doc},
  	{"chr",		builtin_chr,        METH_VARARGS, chr_doc},
  	{"cmp",		builtin_cmp,        METH_VARARGS, cmp_doc},