17db96d56Sopenharmony_ci/*[clinic input] 27db96d56Sopenharmony_cipreserve 37db96d56Sopenharmony_ci[clinic start generated code]*/ 47db96d56Sopenharmony_ci 57db96d56Sopenharmony_ciPyDoc_STRVAR(datetime_date_fromtimestamp__doc__, 67db96d56Sopenharmony_ci"fromtimestamp($type, timestamp, /)\n" 77db96d56Sopenharmony_ci"--\n" 87db96d56Sopenharmony_ci"\n" 97db96d56Sopenharmony_ci"Create a date from a POSIX timestamp.\n" 107db96d56Sopenharmony_ci"\n" 117db96d56Sopenharmony_ci"The timestamp is a number, e.g. created via time.time(), that is interpreted\n" 127db96d56Sopenharmony_ci"as local time."); 137db96d56Sopenharmony_ci 147db96d56Sopenharmony_ci#define DATETIME_DATE_FROMTIMESTAMP_METHODDEF \ 157db96d56Sopenharmony_ci {"fromtimestamp", (PyCFunction)datetime_date_fromtimestamp, METH_O|METH_CLASS, datetime_date_fromtimestamp__doc__}, 167db96d56Sopenharmony_ci 177db96d56Sopenharmony_cistatic PyObject * 187db96d56Sopenharmony_ciiso_calendar_date_new_impl(PyTypeObject *type, int year, int week, 197db96d56Sopenharmony_ci int weekday); 207db96d56Sopenharmony_ci 217db96d56Sopenharmony_cistatic PyObject * 227db96d56Sopenharmony_ciiso_calendar_date_new(PyTypeObject *type, PyObject *args, PyObject *kwargs) 237db96d56Sopenharmony_ci{ 247db96d56Sopenharmony_ci PyObject *return_value = NULL; 257db96d56Sopenharmony_ci static const char * const _keywords[] = {"year", "week", "weekday", NULL}; 267db96d56Sopenharmony_ci static _PyArg_Parser _parser = {NULL, _keywords, "IsoCalendarDate", 0}; 277db96d56Sopenharmony_ci PyObject *argsbuf[3]; 287db96d56Sopenharmony_ci PyObject * const *fastargs; 297db96d56Sopenharmony_ci Py_ssize_t nargs = PyTuple_GET_SIZE(args); 307db96d56Sopenharmony_ci int year; 317db96d56Sopenharmony_ci int week; 327db96d56Sopenharmony_ci int weekday; 337db96d56Sopenharmony_ci 347db96d56Sopenharmony_ci fastargs = _PyArg_UnpackKeywords(_PyTuple_CAST(args)->ob_item, nargs, kwargs, NULL, &_parser, 3, 3, 0, argsbuf); 357db96d56Sopenharmony_ci if (!fastargs) { 367db96d56Sopenharmony_ci goto exit; 377db96d56Sopenharmony_ci } 387db96d56Sopenharmony_ci year = _PyLong_AsInt(fastargs[0]); 397db96d56Sopenharmony_ci if (year == -1 && PyErr_Occurred()) { 407db96d56Sopenharmony_ci goto exit; 417db96d56Sopenharmony_ci } 427db96d56Sopenharmony_ci week = _PyLong_AsInt(fastargs[1]); 437db96d56Sopenharmony_ci if (week == -1 && PyErr_Occurred()) { 447db96d56Sopenharmony_ci goto exit; 457db96d56Sopenharmony_ci } 467db96d56Sopenharmony_ci weekday = _PyLong_AsInt(fastargs[2]); 477db96d56Sopenharmony_ci if (weekday == -1 && PyErr_Occurred()) { 487db96d56Sopenharmony_ci goto exit; 497db96d56Sopenharmony_ci } 507db96d56Sopenharmony_ci return_value = iso_calendar_date_new_impl(type, year, week, weekday); 517db96d56Sopenharmony_ci 527db96d56Sopenharmony_ciexit: 537db96d56Sopenharmony_ci return return_value; 547db96d56Sopenharmony_ci} 557db96d56Sopenharmony_ci 567db96d56Sopenharmony_ciPyDoc_STRVAR(datetime_datetime_now__doc__, 577db96d56Sopenharmony_ci"now($type, /, tz=None)\n" 587db96d56Sopenharmony_ci"--\n" 597db96d56Sopenharmony_ci"\n" 607db96d56Sopenharmony_ci"Returns new datetime object representing current time local to tz.\n" 617db96d56Sopenharmony_ci"\n" 627db96d56Sopenharmony_ci" tz\n" 637db96d56Sopenharmony_ci" Timezone object.\n" 647db96d56Sopenharmony_ci"\n" 657db96d56Sopenharmony_ci"If no tz is specified, uses local timezone."); 667db96d56Sopenharmony_ci 677db96d56Sopenharmony_ci#define DATETIME_DATETIME_NOW_METHODDEF \ 687db96d56Sopenharmony_ci {"now", _PyCFunction_CAST(datetime_datetime_now), METH_FASTCALL|METH_KEYWORDS|METH_CLASS, datetime_datetime_now__doc__}, 697db96d56Sopenharmony_ci 707db96d56Sopenharmony_cistatic PyObject * 717db96d56Sopenharmony_cidatetime_datetime_now_impl(PyTypeObject *type, PyObject *tz); 727db96d56Sopenharmony_ci 737db96d56Sopenharmony_cistatic PyObject * 747db96d56Sopenharmony_cidatetime_datetime_now(PyTypeObject *type, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) 757db96d56Sopenharmony_ci{ 767db96d56Sopenharmony_ci PyObject *return_value = NULL; 777db96d56Sopenharmony_ci static const char * const _keywords[] = {"tz", NULL}; 787db96d56Sopenharmony_ci static _PyArg_Parser _parser = {NULL, _keywords, "now", 0}; 797db96d56Sopenharmony_ci PyObject *argsbuf[1]; 807db96d56Sopenharmony_ci Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 0; 817db96d56Sopenharmony_ci PyObject *tz = Py_None; 827db96d56Sopenharmony_ci 837db96d56Sopenharmony_ci args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 0, 1, 0, argsbuf); 847db96d56Sopenharmony_ci if (!args) { 857db96d56Sopenharmony_ci goto exit; 867db96d56Sopenharmony_ci } 877db96d56Sopenharmony_ci if (!noptargs) { 887db96d56Sopenharmony_ci goto skip_optional_pos; 897db96d56Sopenharmony_ci } 907db96d56Sopenharmony_ci tz = args[0]; 917db96d56Sopenharmony_ciskip_optional_pos: 927db96d56Sopenharmony_ci return_value = datetime_datetime_now_impl(type, tz); 937db96d56Sopenharmony_ci 947db96d56Sopenharmony_ciexit: 957db96d56Sopenharmony_ci return return_value; 967db96d56Sopenharmony_ci} 977db96d56Sopenharmony_ci/*[clinic end generated code: output=1a3da7479e443e17 input=a9049054013a1b77]*/ 98