mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-05-31 17:52:27 +00:00
Perform build and magnum tuning
Building o//third_party/python now takes 5 seconds on my PC This change works towards modifying Python to use runtime dispatching when appropriate. For example, when loading the magnums in the socket module, it's a good idea to check if the magnum is zero, because that means the local system platform doesn't support it.
This commit is contained in:
parent
ee7e296339
commit
d26d7ae0e4
1028 changed files with 6576 additions and 172777 deletions
76
third_party/python/Modules/clinic/_cursesmodule.inc
vendored
Normal file
76
third_party/python/Modules/clinic/_cursesmodule.inc
vendored
Normal file
|
@ -0,0 +1,76 @@
|
|||
/* clang-format off */
|
||||
/*[clinic input]
|
||||
preserve
|
||||
[clinic start generated code]*/
|
||||
|
||||
PyDoc_STRVAR(curses_window_addch__doc__,
|
||||
"addch([y, x,] ch, [attr])\n"
|
||||
"Paint character ch at (y, x) with attributes attr.\n"
|
||||
"\n"
|
||||
" y\n"
|
||||
" Y-coordinate.\n"
|
||||
" x\n"
|
||||
" X-coordinate.\n"
|
||||
" ch\n"
|
||||
" Character to add.\n"
|
||||
" attr\n"
|
||||
" Attributes for the character.\n"
|
||||
"\n"
|
||||
"Paint character ch at (y, x) with attributes attr,\n"
|
||||
"overwriting any character previously painted at that location.\n"
|
||||
"By default, the character position and attributes are the\n"
|
||||
"current settings for the window object.");
|
||||
|
||||
#define CURSES_WINDOW_ADDCH_METHODDEF \
|
||||
{"addch", (PyCFunction)curses_window_addch, METH_VARARGS, curses_window_addch__doc__},
|
||||
|
||||
static PyObject *
|
||||
curses_window_addch_impl(PyCursesWindowObject *self, int group_left_1, int y,
|
||||
int x, PyObject *ch, int group_right_1, long attr);
|
||||
|
||||
static PyObject *
|
||||
curses_window_addch(PyCursesWindowObject *self, PyObject *args)
|
||||
{
|
||||
PyObject *return_value = NULL;
|
||||
int group_left_1 = 0;
|
||||
int y = 0;
|
||||
int x = 0;
|
||||
PyObject *ch;
|
||||
int group_right_1 = 0;
|
||||
long attr = 0;
|
||||
|
||||
switch (PyTuple_GET_SIZE(args)) {
|
||||
case 1:
|
||||
if (!PyArg_ParseTuple(args, "O:addch", &ch)) {
|
||||
goto exit;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (!PyArg_ParseTuple(args, "Ol:addch", &ch, &attr)) {
|
||||
goto exit;
|
||||
}
|
||||
group_right_1 = 1;
|
||||
break;
|
||||
case 3:
|
||||
if (!PyArg_ParseTuple(args, "iiO:addch", &y, &x, &ch)) {
|
||||
goto exit;
|
||||
}
|
||||
group_left_1 = 1;
|
||||
break;
|
||||
case 4:
|
||||
if (!PyArg_ParseTuple(args, "iiOl:addch", &y, &x, &ch, &attr)) {
|
||||
goto exit;
|
||||
}
|
||||
group_right_1 = 1;
|
||||
group_left_1 = 1;
|
||||
break;
|
||||
default:
|
||||
PyErr_SetString(PyExc_TypeError, "curses.window.addch requires 1 to 4 arguments");
|
||||
goto exit;
|
||||
}
|
||||
return_value = curses_window_addch_impl(self, group_left_1, y, x, ch, group_right_1, attr);
|
||||
|
||||
exit:
|
||||
return return_value;
|
||||
}
|
||||
/*[clinic end generated code: output=13ffc5f8d79cbfbf input=a9049054013a1b77]*/
|
Loading…
Add table
Add a link
Reference in a new issue