diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2020-10-09 20:00:45 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-09 20:00:45 (GMT) |
commit | 9975cc5008c795e069ce11e2dbed2110cc12e74e (patch) | |
tree | 87aca48f943cd04f0a3defe5f2666438efa959fa /Tools/clinic/clinic.py | |
parent | b2c0a43699bd9023a69e3fa554f5488a2e17e278 (diff) | |
download | cpython-9975cc5008c795e069ce11e2dbed2110cc12e74e.zip cpython-9975cc5008c795e069ce11e2dbed2110cc12e74e.tar.gz cpython-9975cc5008c795e069ce11e2dbed2110cc12e74e.tar.bz2 |
bpo-41985: Add _PyLong_FileDescriptor_Converter and AC converter for "fildes". (GH-22620)
Diffstat (limited to 'Tools/clinic/clinic.py')
-rwxr-xr-x | Tools/clinic/clinic.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/Tools/clinic/clinic.py b/Tools/clinic/clinic.py index 1bbbd4f..5f2eb53 100755 --- a/Tools/clinic/clinic.py +++ b/Tools/clinic/clinic.py @@ -3103,6 +3103,19 @@ class size_t_converter(CConverter): return super().parse_arg(argname, displayname) +class fildes_converter(CConverter): + type = 'int' + converter = '_PyLong_FileDescriptor_Converter' + + def _parse_arg(self, argname, displayname): + return """ + {paramname} = PyObject_AsFileDescriptor({argname}); + if ({paramname} == -1) {{{{ + goto exit; + }}}} + """.format(argname=argname, paramname=self.name) + + class float_converter(CConverter): type = 'float' default_type = float |