From a49ac9902903a798fab4970ccf563c531199c3f8 Mon Sep 17 00:00:00 2001 From: INADA Naoki Date: Sat, 27 Jan 2018 14:06:21 +0900 Subject: bpo-32677: Add .isascii() to str, bytes and bytearray (GH-5342) --- Objects/unicodeobject.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'Objects/unicodeobject.c') diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 07330119dc..4b90cc364b 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -11611,6 +11611,25 @@ unicode_index(PyObject *self, PyObject *args) return PyLong_FromSsize_t(result); } +/*[clinic input] +str.isascii as unicode_isascii + +Return True if all characters in the string are ASCII, False otherwise. + +ASCII characters have code points in the range U+0000-U+007F. +Empty string is ASCII too. +[clinic start generated code]*/ + +static PyObject * +unicode_isascii_impl(PyObject *self) +/*[clinic end generated code: output=c5910d64b5a8003f input=5a43cbc6399621d5]*/ +{ + if (PyUnicode_READY(self) == -1) { + return NULL; + } + return PyBool_FromLong(PyUnicode_IS_ASCII(self)); +} + /*[clinic input] str.islower as unicode_islower @@ -13801,6 +13820,7 @@ static PyMethodDef unicode_methods[] = { UNICODE_UPPER_METHODDEF {"startswith", (PyCFunction) unicode_startswith, METH_VARARGS, startswith__doc__}, {"endswith", (PyCFunction) unicode_endswith, METH_VARARGS, endswith__doc__}, + UNICODE_ISASCII_METHODDEF UNICODE_ISLOWER_METHODDEF UNICODE_ISUPPER_METHODDEF UNICODE_ISTITLE_METHODDEF -- cgit v1.2.1