Generated by Cython 3.3.0

Yellow lines hint at Python interaction.
Click on a line that starts with a "+" to see the C code that Cython generated for it.

Raw output: types.c

+001: # cython: language_level=3, embedsignature=True, boundscheck=False, wraparound=False, initializedcheck=False
  __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_2) < (0)) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 002: # Copyright (C) 2018-present Jesus Lara
 003: #
+004: from typing import NewType
  {
    PyObject* const __pyx_imported_names[] = {__pyx_mstate_global->__pyx_n_u_NewType};
    __pyx_t_1 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_typing, __pyx_imported_names, 1, NULL, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4, __pyx_L1_error)
  }
  __pyx_t_2 = __pyx_t_1;
  __Pyx_GOTREF(__pyx_t_2);
  {
    PyObject* const __pyx_imported_names[] = {__pyx_mstate_global->__pyx_n_u_NewType};
    __pyx_t_3 = 0; {
      __pyx_t_4 = __Pyx_ImportFrom(__pyx_t_2, __pyx_imported_names[__pyx_t_3]); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_imported_names[__pyx_t_3], __pyx_t_4) < (0)) __PYX_ERR(0, 4, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+005: from datetime import (
  {
    PyObject* const __pyx_imported_names[] = {__pyx_mstate_global->__pyx_n_u_datetime,__pyx_mstate_global->__pyx_n_u_time,__pyx_mstate_global->__pyx_n_u_date,__pyx_mstate_global->__pyx_n_u_timedelta};
    __pyx_t_1 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_datetime, __pyx_imported_names, 4, NULL, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error)
  }
  __pyx_t_2 = __pyx_t_1;
  __Pyx_GOTREF(__pyx_t_2);
  {
    PyObject* const __pyx_imported_names[] = {__pyx_mstate_global->__pyx_n_u_datetime,__pyx_mstate_global->__pyx_n_u_time,__pyx_mstate_global->__pyx_n_u_date,__pyx_mstate_global->__pyx_n_u_timedelta};
    for (__pyx_t_3=0; __pyx_t_3 < 4; __pyx_t_3++) {
      __pyx_t_4 = __Pyx_ImportFrom(__pyx_t_2, __pyx_imported_names[__pyx_t_3]); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_imported_names[__pyx_t_3], __pyx_t_4) < (0)) __PYX_ERR(0, 5, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 006:     datetime,
 007:     time,
 008:     date,
 009:     timedelta
 010: )
+011: from uuid import UUID
  {
    PyObject* const __pyx_imported_names[] = {__pyx_mstate_global->__pyx_n_u_UUID};
    __pyx_t_1 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_uuid, __pyx_imported_names, 1, NULL, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 11, __pyx_L1_error)
  }
  __pyx_t_2 = __pyx_t_1;
  __Pyx_GOTREF(__pyx_t_2);
  {
    PyObject* const __pyx_imported_names[] = {__pyx_mstate_global->__pyx_n_u_UUID};
    __pyx_t_3 = 0; {
      __pyx_t_4 = __Pyx_ImportFrom(__pyx_t_2, __pyx_imported_names[__pyx_t_3]); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 11, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_imported_names[__pyx_t_3], __pyx_t_4) < (0)) __PYX_ERR(0, 11, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+012: from decimal import Decimal
  {
    PyObject* const __pyx_imported_names[] = {__pyx_mstate_global->__pyx_n_u_Decimal};
    __pyx_t_1 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_decimal, __pyx_imported_names, 1, NULL, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error)
  }
  __pyx_t_2 = __pyx_t_1;
  __Pyx_GOTREF(__pyx_t_2);
  {
    PyObject* const __pyx_imported_names[] = {__pyx_mstate_global->__pyx_n_u_Decimal};
    __pyx_t_3 = 0; {
      __pyx_t_4 = __Pyx_ImportFrom(__pyx_t_2, __pyx_imported_names[__pyx_t_3]); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 12, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_imported_names[__pyx_t_3], __pyx_t_4) < (0)) __PYX_ERR(0, 12, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    }
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 013: 
 014: 
+015: uint64 = NewType('uint64', int)  # uint64
  __pyx_t_4 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_NewType); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 15, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = 1;
  {
    PyObject *__pyx_callargs[3] = {__pyx_t_4, __pyx_mstate_global->__pyx_n_u_uint64, ((PyObject *)(&PyLong_Type))};
    __pyx_t_2 = __Pyx_PyObject_FastCall((PyObject*)__pyx_t_5, __pyx_callargs+__pyx_t_6, (3-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 15, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
  }
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_uint64, __pyx_t_2) < (0)) __PYX_ERR(0, 15, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+016: uint64_min = 0
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_uint64_min, __pyx_mstate_global->__pyx_int_0) < (0)) __PYX_ERR(0, 16, __pyx_L1_error)
+017: uint64_max = (1 << 64) - 1
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_uint64_max, __pyx_mstate_global->__pyx_int_0xffffffffffffffff) < (0)) __PYX_ERR(0, 17, __pyx_L1_error)
 018: 
 019: 
 020: DB_TYPES: dict = {
+021:     bool: "boolean",
  __pyx_t_2 = __Pyx_PyDict_NewPresized(16); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyBool_Type)), __pyx_mstate_global->__pyx_n_u_boolean) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
+022:     int: "integer",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyLong_Type)), __pyx_mstate_global->__pyx_n_u_integer) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
 023:     # int64: "bigint",
+024:     uint64: "bigint",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_uint64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 24, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_n_u_bigint) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+025:     float: "float",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyFloat_Type)), __pyx_mstate_global->__pyx_n_u_float) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
+026:     str: "character varying",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyUnicode_Type)), __pyx_mstate_global->__pyx_kp_u_character_varying) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
+027:     bytes: "byte",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyBytes_Type)), __pyx_mstate_global->__pyx_n_u_byte) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
+028:     list: "Array",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyList_Type)), __pyx_mstate_global->__pyx_n_u_Array) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
+029:     tuple: "Array",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyTuple_Type)), __pyx_mstate_global->__pyx_n_u_Array) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
+030:     Decimal: "numeric",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_Decimal); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 30, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_n_u_numeric) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+031:     date: "date",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_date); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 31, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_n_u_date) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+032:     datetime: "timestamp without time zone",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_datetime); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 32, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_kp_u_timestamp_without_time_zone) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+033:     time: "time",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 33, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_n_u_time) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+034:     timedelta: "timestamp without time zone",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_timedelta); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 34, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_kp_u_timestamp_without_time_zone) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+035:     UUID: "uuid",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_UUID); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 35, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_n_u_uuid) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+036:     dict: "jsonb",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyDict_Type)), __pyx_mstate_global->__pyx_n_u_jsonb) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
+037:     type(None): None
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)Py_TYPE(Py_None)), Py_None) < (0)) __PYX_ERR(0, 21, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_DB_TYPES, __pyx_t_2) < (0)) __PYX_ERR(0, 20, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 038: }
 039: 
 040: 
 041: MODEL_TYPES: dict = {
+042:     "boolean": bool,
  __pyx_t_2 = __Pyx_PyDict_NewPresized(24); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_boolean, ((PyObject *)(&PyBool_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+043:     "integer": int,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_integer, ((PyObject *)(&PyLong_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+044:     "bigint": uint64,
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_uint64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 44, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_bigint, __pyx_t_5) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+045:     "float": float,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_float, ((PyObject *)(&PyFloat_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+046:     "character varying": str,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_character_varying, ((PyObject *)(&PyUnicode_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+047:     "string": str,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_string, ((PyObject *)(&PyUnicode_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+048:     "varchar": str,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_varchar, ((PyObject *)(&PyUnicode_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+049:     "byte": bytes,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_byte, ((PyObject *)(&PyBytes_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+050:     "bytea": bytes,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_bytea, ((PyObject *)(&PyBytes_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+051:     "Array": list,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_Array, ((PyObject *)(&PyList_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+052:     "hstore": dict,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_hstore, ((PyObject *)(&PyDict_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+053:     "character varying[]": list,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_character_varying_2, ((PyObject *)(&PyList_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+054:     "numeric": Decimal,
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_Decimal); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 54, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_numeric, __pyx_t_5) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+055:     "date": date,
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_date); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 55, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_date, __pyx_t_5) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+056:     "timestamp with time zone": datetime,
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_datetime); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 56, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_timestamp_with_time_zone, __pyx_t_5) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+057:     "time": time,
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 57, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_time, __pyx_t_5) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+058:     "timestamp without time zone": datetime,
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_datetime); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 58, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_timestamp_without_time_zone, __pyx_t_5) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+059:     "uuid": UUID,
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_UUID); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 59, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_uuid, __pyx_t_5) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+060:     "json": dict,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_json, ((PyObject *)(&PyDict_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+061:     "jsonb": dict,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_jsonb, ((PyObject *)(&PyDict_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+062:     "text": str,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_text, ((PyObject *)(&PyUnicode_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+063:     "serial": int,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_serial, ((PyObject *)(&PyLong_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+064:     "bigserial": int,
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_bigserial, ((PyObject *)(&PyLong_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
+065:     "inet": str
  if (PyDict_SetItem(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_inet, ((PyObject *)(&PyUnicode_Type))) < (0)) __PYX_ERR(0, 42, __pyx_L1_error)
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_MODEL_TYPES, __pyx_t_2) < (0)) __PYX_ERR(0, 41, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 066: }
 067: 
 068: 
 069: JSON_TYPES: dict = {
+070:     bool: "boolean",
  __pyx_t_2 = __Pyx_PyDict_NewPresized(14); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 70, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyBool_Type)), __pyx_mstate_global->__pyx_n_u_boolean) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
+071:     int: "integer",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyLong_Type)), __pyx_mstate_global->__pyx_n_u_integer) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
+072:     uint64: "long",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_uint64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 72, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_n_u_long) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+073:     float: "number",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyFloat_Type)), __pyx_mstate_global->__pyx_n_u_number) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
+074:     str: "string",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyUnicode_Type)), __pyx_mstate_global->__pyx_n_u_string) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
+075:     bytes: "byte",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyBytes_Type)), __pyx_mstate_global->__pyx_n_u_byte) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
+076:     list: "array",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyList_Type)), __pyx_mstate_global->__pyx_n_u_array) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
+077:     dict: "object",
  if (PyDict_SetItem(__pyx_t_2, ((PyObject *)(&PyDict_Type)), __pyx_mstate_global->__pyx_n_u_object) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
+078:     Decimal: "number",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_Decimal); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 78, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_n_u_number) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+079:     date: "date",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_date); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 79, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_n_u_date) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+080:     datetime: "datetime",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_datetime); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 80, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_n_u_datetime) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+081:     time: "time",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 81, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_n_u_time) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+082:     timedelta: "timedelta",
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_timedelta); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 82, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_n_u_timedelta) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+083:     UUID: "uuid"
  __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_UUID); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 83, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (PyDict_SetItem(__pyx_t_2, __pyx_t_5, __pyx_mstate_global->__pyx_n_u_uuid) < (0)) __PYX_ERR(0, 70, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_JSON_TYPES, __pyx_t_2) < (0)) __PYX_ERR(0, 69, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 084: }
 085: 
 086: 
 087: ### Declaration of New Types:
+088: Text: str = NewType('Text', str)
  __pyx_t_5 = NULL;
  __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_NewType); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 88, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_6 = 1;
  {
    PyObject *__pyx_callargs[3] = {__pyx_t_5, __pyx_mstate_global->__pyx_n_u_Text, ((PyObject *)(&PyUnicode_Type))};
    __pyx_t_2 = __Pyx_PyObject_FastCall((PyObject*)__pyx_t_4, __pyx_callargs+__pyx_t_6, (3-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 88, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
  }
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_Text, __pyx_t_2) < (0)) __PYX_ERR(0, 88, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 089: 
 090: 
+091: def default_dict():
/* Python wrapper */
static PyObject *__pyx_pw_9datamodel_5types_1default_dict(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
PyDoc_STRVAR(__pyx_doc_9datamodel_5types_default_dict, "default_dict()\n\nReturn a default empty string usable into Dataclasses.\n    ");
static PyMethodDef __pyx_mdef_9datamodel_5types_1default_dict = {"default_dict", (PyCFunction)__pyx_pw_9datamodel_5types_1default_dict, METH_NOARGS, __pyx_doc_9datamodel_5types_default_dict};
static PyObject *__pyx_pw_9datamodel_5types_1default_dict(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("default_dict (wrapper)", 0);
  __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs);
  __pyx_r = __pyx_pf_9datamodel_5types_default_dict(__pyx_self);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_9datamodel_5types_default_dict(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("datamodel.types.default_dict", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_9datamodel_5types_1default_dict, 0, __pyx_mstate_global->__pyx_n_u_default_dict, NULL, __pyx_mstate_global->__pyx_n_u_datamodel_types, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 91, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
  PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
  #endif
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_default_dict, __pyx_t_2) < (0)) __PYX_ERR(0, 91, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 092:     """Return a default empty string usable into Dataclasses.
 093:     """
+094:     return {}
  __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 94, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  {
    PyObject *__pyx_temp;
    {
      __pyx_temp = __pyx_r;
      __pyx_r = __pyx_t_1;
    }
    __Pyx_XDECREF(__pyx_temp);
  }
  __pyx_t_1 = 0;
  goto __pyx_L0;
 095: 
 096: 
+097: def default_string():
/* Python wrapper */
static PyObject *__pyx_pw_9datamodel_5types_3default_string(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
PyDoc_STRVAR(__pyx_doc_9datamodel_5types_2default_string, "default_string()\n\nReturn a default string.\n    ");
static PyMethodDef __pyx_mdef_9datamodel_5types_3default_string = {"default_string", (PyCFunction)__pyx_pw_9datamodel_5types_3default_string, METH_NOARGS, __pyx_doc_9datamodel_5types_2default_string};
static PyObject *__pyx_pw_9datamodel_5types_3default_string(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
  CYTHON_UNUSED PyObject *const *__pyx_kwvalues;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("default_string (wrapper)", 0);
  __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs);
  __pyx_r = __pyx_pf_9datamodel_5types_2default_string(__pyx_self);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_9datamodel_5types_2default_string(CYTHON_UNUSED PyObject *__pyx_self) {
  PyObject *__pyx_r = NULL;
/* … */
  __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_9datamodel_5types_3default_string, 0, __pyx_mstate_global->__pyx_n_u_default_string, NULL, __pyx_mstate_global->__pyx_n_u_datamodel_types, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 97, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
  PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
  #endif
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_default_string, __pyx_t_2) < (0)) __PYX_ERR(0, 97, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 098:     """Return a default string.
 099:     """
+100:     return ''
  {
    PyObject *__pyx_temp;
    {
      __pyx_temp = __pyx_r;
      __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_u_);
      __pyx_r = __pyx_mstate_global->__pyx_kp_u_;
    }
    __Pyx_XDECREF(__pyx_temp);
  }
  goto __pyx_L0;